【问题标题】:HTML5 Video, Only Fire on FIrst onplay functionHTML5 视频,仅在第一次播放功能时触发
【发布时间】:2014-12-18 00:16:43
【问题描述】:

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

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

【问题讨论】:

    标签: video html5-video


    【解决方案1】:

    您可以通过以下方式将自己附加到“canplaythrough”事件中: vid.addEventListener("canplaythrough", loadXmlDoc);

    在视频完全加载后立即触发一次此事件。

    有关此活动的更多信息,请查看w3schools.com

    【讨论】:

      【解决方案2】:

      可以在事件函数中覆盖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...
        }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-29
        相关资源
        最近更新 更多