<header>
<h2 class="title">HTML Event: seeking</h2>
<p class="description">Подія спрацьовує, коли користувач починає перемотувати відео.</p>
</header>
<main>
<div class="result">
<!-- Відео елемент -->
<video id="myVideo" width="600" controls>
<source src="https://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
Ваш браузер не підтримує відтворення відео.
</video>
<!-- Прогрес бар -->
<div class="progress-container">
<label for="progressBar">Прогрес перемотування:</label>
<progress id="progressBar" value="0" max="100"></progress>
</div>
<!-- Виведення повідомлення -->
<div id="output"></div>
</div>
</main>
body {
font-size: 16px;
line-height: 1.5;
font-family: monospace;
}
header {
background-color: #f1f1f1;
margin-bottom: 25px;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
header h2.title {
padding-bottom: 15px;
border-bottom: 1px solid #999;
}
header p.description {
font-style: italic;
color: #222;
}
.result {
background-color: #f8f8f8;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
.progress-container {
margin-top: 20px;
}
#output {
margin-top: 15px;
padding: 10px;
background-color: #eaeaea;
border: 1px solid #ccc;
font-style: italic;
}
const video = document.getElementById('myVideo');
const progressBar = document.getElementById('progressBar');
const output = document.getElementById('output');
// Додаємо обробник події 'seeking'
video.addEventListener('seeking', function() {
// Отримуємо поточний час відтворення
const currentTime = video.currentTime;
// Обчислюємо прогрес як відсоток від загальної тривалості
const progress = (currentTime / video.duration) * 100;
// Оновлюємо значення прогрес-бару
progressBar.value = progress;
// Виводимо повідомлення
output.textContent = `Користувач почав перемотування. Поточний час: ${currentTime.toFixed(2)} секунд.`;
});
// Очищаємо повідомлення
video.addEventListener('seeked', function() {
setTimeout(() => {
output.innerHTML = ''; // Очищаємо повідомлення через 2 секунди після завершення перемотування
}, 2000);
});
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.