0

我有一个带有事件的视频标签。例如,我有如下代码: myPlayer = document.getElementById("player");

      myPlayer.onended=reachedEnd();
       myPlayer.onpause = pauseEvent();
         myPlayer.onplay = resumePlayer();  

问题是,事件函数会立即运行,我怀疑它们应该在它们应该运行的时候运行,但它们肯定会在定义时运行。我究竟做错了什么?(我确实对“myPlayer”做了警告,它是一个视频对象,所以这部分是正确的)。

4

1 回答 1

0

函数名称旁边的括号使函数立即运行。相反,您希望像变量一样引用函数,将对它们的引用传递给事件。相反,'onended' 等被设置为这些函数返回的值,这可能是undefined,所以当这些事件最终发生时什么都不会发生。

只要去掉括号,你应该没问题。

于 2013-01-15T03:42:44.697 回答