我的视频中有一个功能可以循环播放下一个视频,此功能可以通过复选框打开或关闭。我正在使用提醒来验证"play next"
是否已选中复选框,并且未选中"dont play next"
复选框。我希望选中复选框并默认播放(在页面加载时),并在此之后始终收听。
我现在遇到的问题是,当我收到"dont play next"
提醒时,视频仍会播放下一个视频。
我的JavaScript
$(document).ready(function() {
$(function() {
chckplynext();
$("#chkbox1").change(chckplynext);
});
function chckplynext() {
if ($("#chkbox1").is(':checked')) {
alert("play next");
$("#myvid").on("ended", function() {
window.location.href = "<?php echo'now-watching.php?nMe='.$usTitle1.'&nmov='.$usId1.'' ?>";
});
} else {
alert(" Dont play next");
}
}
});
答案 0 :(得分:1)
如果没有工作示例,很难确切知道您正在使用哪个框架或库。但是,看起来您多次绑定事件。
您可以从重构代码中受益
$(document).ready(function() {
$("#myvid").on("ended", function() {
if ($("#chkbox1").is(':checked')) {
alert("play next");
window.location.href = "<?php echo'now-watching.php?nMe='.$usTitle1.'&nmov='.$usId1.'' ?>";
} else {
alert(" Dont play next");
}
});
});
更改是我们将事件绑定一次,当视频结束时,它将始终触发。在这一点上,我们可以检查是否播放下一个视频。
通过将$("#myvid").off("ended")
添加到else
块中,您可以获得与原始结构类似的结果。