<header>
  <h2 class="title">HTML Events: ratechange</h2>
  <p class="description">Відстежує зміни швидкості відтворення медіафайлу (відео або аудіо).</p>
</header>

<main>
  <div class="result">
    <!-- Відео для демонстрації -->
    <video id="myVideo" width="320" height="240" controls>
      <source src="https://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
      Ваш браузер не підтримує відео тег.
    </video>
    
    <!-- Кнопки для зміни швидкості -->
    <div class="controls">
      <button id="slower">Повільніше</button>
      <button id="normal">Нормальна швидкість</button>
      <button id="faster">Швидше</button>
    </div>
    
    <!-- Відображення поточної швидкості відтворення -->
    <p id="rateDisplay">Поточна швидкість: 1.0x</p>
  </div>
</main>
body {
  font-size: 16px;
  line-height: 1.5;
  font-family: monospace;
}

header {
  background-color: #f1f1f1;
  margin-bottom: 25px;
  padding: 15px;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  -moz-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;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  -moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

.controls {
  margin-top: 20px;
}

button {
  padding: 10px 20px;
  font-size: 16px;
  margin-right: 10px;
}

p#rateDisplay {
  margin-top: 10px;
  font-size: 14px;
  font-weight: bold;
}
let video = document.getElementById('myVideo');
let rateDisplay = document.getElementById('rateDisplay');
let slowerButton = document.getElementById('slower');
let normalButton = document.getElementById('normal');
let fasterButton = document.getElementById('faster');

// Відстежуємо зміну швидкості відтворення
video.addEventListener('ratechange', function() {
  rateDisplay.textContent = `Поточна швидкість: ${video.playbackRate}x`;
});

// Зміна швидкості на повільнішу
slowerButton.addEventListener('click', function() {
  video.playbackRate = 0.5;
});

// Зміна швидкості на нормальну
normalButton.addEventListener('click', function() {
  video.playbackRate = 1.0;
});

// Зміна швидкості на швидшу
fasterButton.addEventListener('click', function() {
  video.playbackRate = 1.5;
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.