首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >音频上的HTML5进度条-如何在单击时更改音频位置?

问音频上的HTML5进度条-如何在单击时更改音频位置?
EN

Stack Overflow用户
提问于 2020-02-25 19:54:40
回答 2查看 1.5K关注 0票数 0

我重新创建了一个正在处理的类似代码的fiddle。问题是我不能改变音频位置。例如,如果音频正在播放ad second 5,而我想跳过曲目的一部分并转到结尾,它不会改变。

在小提琴中,进度条会改变,但音频会继续播放而不会改变。在我的测试环境中,单击时进度条会发生变化,然后它会立即返回到音频正在播放的正确位置,而且在这里音频会继续播放而不会发生变化。

要更改单击时的音频进度,我可以做些什么?

下面是我的代码:

​

代码语言:javascript
复制
const audio = $('audio')[0];

const progressBar = document.getElementById('progressbar');
function updateProgressBar() {
  const percentage = Math.floor((100 / audio.duration) * audio.currentTime);
  progressBar.value = percentage;
  progressBar.innerHTML = percentage + '% played';
}

$("#progressbar").on("click", function(e) {
  var max = $(this).width(); //Get width element
  var pos = e.pageX - $(this).offset().left; //Position cursor
  var dual = Math.round(pos / max * 100); // Round %
  if (dual > 100) {
    var dual = 100;
  }
  $(this).val(dual);
  progressBar.value = dual
});
代码语言:javascript
复制
<audio src="https://file-examples.com/wp-content/uploads/2017/11/file_example_WAV_10MG.wav"> </audio>
<progress id="progressbar" class="progress_controls" max="100" value="0"></progress>

<div id="play">
PLAY
</div>

<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>

​

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-04-07 18:05:40

您需要在单击函数中添加一个currentTime事件监听器,此处,将您的单击函数替换为:

代码语言:javascript
复制
$("#progressbar").on("click", function(e) {
var progbar = $('#progressbar');
var pos = e.pageX - progbar.offset().left; //Position cursor
var percent = pos / progbar.width(); //Get width element
audio.currentTime = percent * audio.duration;
progbar.value = percent / 100;
});
票数 1
EN

Stack Overflow用户

发布于 2020-02-25 20:13:58

您缺少两个东西--一个用来更新音轨进度条的listener,以及一个根据您在进度条上的单击来更新音轨currentTime的函数。已经有很多关于这个的帖子了,请先搜索一下!

Audio Progress Bar html5 with interaction

Custom progress bar for <audio> and <progress> HTML5 elements

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60394050

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档