HTML5视频,仅在FIrst onplay功能上触发

时间:2014-12-18 00:16:44

标签: video html5-video

以下脚本效果很好,但每次按下播放按钮(播放,暂停,播放等)时都会触发。我希望修改此播放视频事件,以便仅在第一个Play事件中触发。我熟悉其他功能ondurationchange等,但它们不能用于我的设置,因为我需要预加载视频,并且不希望在实际按下播放按钮之前触发该功能。任何帮助都会非常感激!

var vid = document.getElementById("videoContent");
                    vid.onplay = function loadXMLDoc() {

2 个答案:

答案 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...
  }
}