我有一个WMP播放器对象,并且试图添加一个事件侦听器以拦截发送到播放器的ScriptCommand。而不是附加到WMP对象,而是立即调用我的回调,这样就不会截获ScriptCommands。
function init() {
var WMPlayer = document.getElementById("WMPlayer");
WMPlayer.addEventListener("ScriptCommand", MyScriptCommand(), false);
alert('init');
}
function MyScriptCommand() {
alert('script');
}
运行此命令时,我会在初始化警报之前收到脚本警报。...有人知道为什么会发生这种情况吗?
最佳答案
WMPlayer.addEventListener("ScriptCommand", MyScriptCommand(), false);
需要是
WMPlayer.addEventListener("ScriptCommand", MyScriptCommand, false);
没有括号。使用括号,您将调用该函数并将其返回值作为侦听器传递,而不是传递给实际函数的引用。