如何使用javascript自定义事件而不是while循环?

贾斯汀·蒂沃(Justin Tivo)

我试图在一个不断变化的元素变为某个值时调用一个函数。

player.getCurrentTime() >= 0.95 * player.getDuration()我想打电话handleEvent()最好的方法是什么?这是我尝试的最新迭代:

window.onLoad=function() {
    var player = document.getElementById("movie_player");

    player.addEventListener("customEvent", handleEvent(), false);

    function handleEvent() {
    // do something here
    }

    var myEvent = new CustomEvent("customEvent", {
        detail: {
                    time: 0.95 * getDuration()
                }
    });
    document.body.dispatchEvent(myEvent);
}

我将如何完成?

塔希尔·艾哈迈德(Tahir Ahmed)

我猜您正在使用YouTube播放器。根据其API,有一个YT.PlayerState.PLAYING事件可用于跟踪您的getCurrentTime()看一下下面的代码:

player.addEventListener(YT.PlayerState.PLAYING, onVideoPlaying, false);

function onVideoPlaying(){
  console.log('video is playing');
  if (player.getCurrentTime() >= 0.95 * player.getDuration()){
    console.log('Here I am!');
    // do Something
  }
}

另外,我认为您不需要dispatchEvent自己,因为如上所述,player您已经在调度一个可以不断利用的不断变化的事件。

让我知道是否有任何不清楚的地方,或者是否错过了任何细节。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章