以下脚本效果很好,但每次按下播放按钮(播放,暂停,播放等)时都会触发。我希望修改此播放视频事件,以便仅在第一个Play事件中触发。我熟悉其他功能ondurationchange等,但它们不能用于我的设置,因为我需要预加载视频,并且不希望在实际按下播放按钮之前触发该功能。任何帮助都会非常感激!
var vid = document.getElementById("videoContent");
vid.onplay = function loadXMLDoc() {
答案 0 :(得分:0)
您可以通过以下方式将自己附加到“canplaythrough”事件:
vid.addEventListener("canplaythrough", loadXmlDoc);
只要视频完全加载,就会触发此事件一次。
有关此活动的更多信息,请查看w3schools.com
答案 1 :(得分:0)
您可以在事件函数中覆盖onplay事件
var vid = document.querySelector("video");
vid.onplay = myFunction;
function myFunction(){
vid.onplay = null;
// do somthing....
}
或者您可以使用全局变量作为条件,在首次触发时将其更改为true
var ran = false;
function myFunction() {
if (!ran) {
ran = true;
// do something...
}
}