素材牛VIP会员
js如何优雅的控制html中audio标签播放的次数?
 走***一  分类:Html5  人气:1506  回帖:3  发布于6年前 收藏

思考:audio加了loop属性是控制audio不间断循环播放,但是很多时候我们需要的是连续播放三次或者四次,如何指定loop的次数呢?

 标签:html5

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv4 码徒
风***2 站长 6年前#1

抛砖 : )

audio有一个事件: end

http://www.w3.org/html/wg/drafts/html/master/semantics.html#event-media-ended

思路就是:通过监听播放结束的次数,来控制播放。

function playTimes(elem, times) {
    var start = 0;
    elem.addEventListener("ended",function() {
        start++;
        start == times && elem.pause();
    });
}

了解更多:

http://stackoverflow.com/questions/14190160/html5-audio-element-with-dynamic-source

Lv1 新人
陌***人 PHP开发工程师 6年前#2
var audio = document.createElement("audio");  
var index = 0;
    audio.src = "xx.mp3";  
    audio.addEventListener('ended', function () {  
    setTimeout(function () {if(index<4){ audio.play(); index++}}, 500);  
    }, false);  
    audio.play();  
Lv5 码农
yi***ou CEO 6年前#3

楼主你的问题解决了吗?我目前也遇到统计audio的播放次数的问题

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取