jQuery 调用一个函数来播放下一个音频文件
Posted
技术标签:
【中文标题】jQuery 调用一个函数来播放下一个音频文件【英文标题】:jQuery recall a function to play the next audio file 【发布时间】:2021-06-21 07:08:55 【问题描述】:我找到了一个播放音频文件的功能(onclick),她工作正常
我想在当前结束时使用此功能播放下一个音频文件 所以我记得onended里面的函数,播放下一个音频文件但它会冻结并重复到无穷大而不传递到下一个文件
var thissound = new Audio();
var currentKey;
function EvalSound(key)
if (currentKey !== key)
thissound.src = "media/audio/chapters/" + chapternum + "/" + key + ".mp3";
currentKey = key;
if (thissound.paused)
thissound.play();
else
thissound.pause();
thissound.currentTime = 0;
currentPlayer = thissound;
$(".audio").click(function(e)
e.preventDefault();
var parentid = $(this).parent().parent().attr('id');
var nextfile = parseInt(parentid) + 1;
EvalSound(parentid);
thissound.onended = function()
EvalSound(nextfile);
return false;
;
);
html(例如)
<li class="liste" id="1">
<p><img class="audio" src="images/default/buttons/play.png" title="Play" /></p>
<p>some text</p>
</li>
<li class="liste" id="2">
<p><img class="audio" src="images/default/buttons/play.png" title="Play" /></p>
<p>some text</p>
</li>
...
...
感谢您的帮助
【问题讨论】:
【参考方案1】:我解决了 所以,我把“thissound.onended = function()”放在函数里面
thissound.onended = function()
var nextfile = parseInt(key) + 1;
if($("#" + nextfile).length)
$(window).scrollTop($('#' + nextfile).offset().top);
EvalSound(nextfile);
;
【讨论】:
以上是关于jQuery 调用一个函数来播放下一个音频文件的主要内容,如果未能解决你的问题,请参考以下文章