最近做的项目中,有一个需求:是需要根据指定的开始、结束时间去播放音频。
理所当然的想到的是修改audio的currentTime,监听timeupdate。
但是在pc端可以正常播放,但是在iphone上却播放不了。所以就在网上找了一下解决办法,比较零散,所以整理了一下代码。
特此记录一下。
var myAudio = $("#audio1")[0];
document.addEventListener("WeixinJSBridgeReady", function () {
myAudio.load();
}, false);
function setCurEndTimeAndPlay(startTime, endTime) {
myAudio.play();
myAudio.pause();
myAudio.currentTime = startTime;
var audioFun = function () {
myAudio.play();
if (myAudio.currentTime >= endTime) {
myAudio.pause();
myAudio.removeEventListener("timeupdate",audioFun);
}
}
myAudio.addEventListener("timeupdate",audioFun);
}
这里就是利用WeixinJSBridgeReady做了一下加载,
不然的话,按照ios的系统是没有办法在播放之前修改currentTime的。