Преобразование <audio> currentTime в отображение точного времени

user2284703

Я обнаружил много вопросов, похожих на мой, но результаты которых неэффективны.

Я пытаюсь отобразить текущее время звука как часы: минуты: секунды (00:00:00), а не только в «секундах» или «минутах и ​​секундах». Текущий код - это то, что у меня есть ...

<audio id="audio" ontimeupdate="document.getElementById('tracktime').innerHTML = '0' + Math.floor(this.currentTime) + ' / ' + Math.floor(this.duration); " src="music.mp3"></audio>

Это отображает секунды как 0/0 внутри следующих ...

<span id="tracktime">0 / 0</span>

Я искал часы, и все решения, которые я нашел, просто ничего не делают.

Я даже нашел следующий код, чтобы помочь, но не знаю, как реализовать это в действии ontimeupdate в теге audio.

var minutes = '0' + Math.floor(currentTime / 60); var seconds = '0' + (currentTime - minutes * 60); var cur = minutes.substr(-2) + ':' + seconds.substr(-2);

Если возможно, я бы хотел, чтобы он отображался как два отдельных элемента. Вот так...

<div id="currentTime"></div>
<div id="duration"></div>

Спасибо!

Сын

Вот пример того, как вы можете это сделать

window.addEventListener('load', function() {
  var cur = document.querySelector('#cur'),
      dur = document.querySelector('#dur')
      vid = document.querySelector('#aud')
})
    
aud.addEventListener('timeupdate', function(e) {
  cur.textContent = "Current: " + sToTime(e.target.currentTime);
  dur.textContent = "Duration: " + sToTime(e.target.duration);
})

function sToTime(t) {
  return padZero(parseInt((t / (60 * 60)) % 24)) + ":" +
         padZero(parseInt((t / (60)) % 60)) + ":" + 
         padZero(parseInt((t) % 60));
}
function padZero(v) {
  return (v < 10) ? "0" + v : v;
}
<audio id="aud" controls>
  <source src="http://techslides.com/demos/samples/sample.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>

<p id="cur"></p>
<p id="dur"></p>

Эта статья взята из Интернета, укажите источник при перепечатке.

Если есть какие-либо нарушения, пожалуйста, свяжитесь с[email protected] Удалить.

Отредактировано в
0

я говорю два предложения

0обзор
Войти в системуУчаствуйте в комментариях

Статьи по теме

Получатели Vuex в реальном времени обновляют состояние audio.currentTime

javascript <audio>: не могу обновить currentTime

установка audio.currentTIme; с буфером песен, отправленным с экспресс-сервера

Я могу получить audio.currentTime, но не могу установить его (в Google Chrome)

HTML5 audio - currentTime attribute inaccurate?

html5 audio: изменение currentTime запускает несколько событий canplay

Получение HTML5 audio "currentTime" и "duration" в Python

Видео отстает при использовании currentTime

Проблемы с currentTime при использовании относительного пути

Где определяется `CurrentTime`? Как мне это получить?

Setting currentTime is not working while streaming audio via http

html Audio currentTime и FileResult в asp.net MVC

Vuex getters real time updating audio.currentTime state

How to set the currentTime in HTML5 audio object when audio file is online?

Создание программы просмотра звуковых шагов / ударов с аудио currentTime миллисекундами JQuery

HTML аудио не может установить currentTime

Можно ли динамически установить currentTime видео без вызова onSeeked?

Доступ к currentTime для цели SyntheticEvent

Можно ли установить currentTime звука в миллисекундах вместо секунд? -Javascript

Как получить currentTime внутри события timeupdate (применить и привязать)

JavaScript: изменить цвет текста в зависимости от video.currentTime

В веб-аудио, почему contextTime отстает от currentTime более чем на baseLatency?

Установить videoElement.currentTime в видеоплеере Hulu не работает, и проигрыватель ломается

AudioContext.currentTime + переменное время

HTML 5 видеоплеер обновляет currentTime с заданным номером

Множественные ошибки при использовании video.currentTime

Синхронизировать слайдер с CurrentTime Video Dash Plotly

Изменение currentTime с помощью React Component State

JPA устанавливает временную метку, созданную базой данных, но не CURRENTTIME или UPDATETIME

TOP список

  1. 1

    Распределение Рэлея Curve_fit на Python

  2. 2

    How to click an array of links in puppeteer?

  3. 3

    В типе Observable <unknown> отсутствуют следующие свойства из типа Promise <any>.

  4. 4

    Как добавить Swagger в веб-API с поддержкой OData, работающий на ASP.NET Core 3.1

  5. 5

    Нарисуйте диаграмму с помощью highchart.js

  6. 6

    无法通过Vue在传单中加载pixiOverlay

  7. 7

    Отчеты Fabric Debug Craslytic: регистрация, отсутствует идентификатор сборки, применить плагин: io.fabric

  8. 8

    Статус HTTP 403 - ожидаемый токен CSRF не найден

  9. 9

    TypeError: store.getState não é uma função. (Em 'store.getState ()', 'store.getState' é indefinido, como posso resolver esse problema?

  10. 10

    ContentDialog.showAsync в универсальном оконном приложении Win 10

  11. 11

    В UICollectionView порядок меняется автоматически

  12. 12

    Merging legends in plotly subplot

  13. 13

    Elasticsearch - Нечеткий поиск не дает предложения

  14. 14

    Bogue étrange datetime.utcnow()

  15. 15

    Объединение таблиц в листе Google - полное соединение

  16. 16

    Single legend for Plotly subplot for line plots created from two data frames in R

  17. 17

    как я могу удалить vue cli 2?

  18. 18

    ViewPager2 мигает / перезагружается при смахивании

  19. 19

    Компилятор не знает о предоставленных методах Trait

  20. 20

    JDBI - В чем разница между @define и @bind в JDBI?

  21. 21

    проблемы с AVG и LIMIT SQL

популярныйтег

файл