我有一个包含活动的视频标签。 例如,我有以下代码: myPlayer = document.getElementById(“player”);
myPlayer.onended=reachedEnd();
myPlayer.onpause = pauseEvent();
myPlayer.onplay = resumePlayer();
问题是,事件函数立即运行,我怀疑它们应该运行,但它们肯定在定义时运行。 我究竟做错了什么? (我确实警告过'myPlayer',它是一个视频对象,所以这部分是正确的。)
答案 0 :(得分:0)
函数名旁边的括号导致函数立即运行。相反,您希望引用变量等函数,将对它们的引用传递给事件。相反,'onended'等设置为这些函数返回的值,大概是undefined
,因此当这些事件最终发生时没有任何反应。
摆脱括号,你应该没事。