例如:
someElement.addEventListener("blahblah", alert("hello!"));
当同时输入 Chrome 和 Firefox 开发控制台时,似乎会触发alert("hello!")
一次调用,然后返回“ undefined
”。
如果我将相同的调用嵌入到页面中,那么似乎什么也没有发生——没有触发错误,没有返回有趣的值,等等。
例如:
someElement.addEventListener("blahblah", alert("hello!"));
当同时输入 Chrome 和 Firefox 开发控制台时,似乎会触发alert("hello!")
一次调用,然后返回“ undefined
”。
如果我将相同的调用嵌入到页面中,那么似乎什么也没有发生——没有触发错误,没有返回有趣的值,等等。
它只是一个自定义事件,也可以被触发。
但是,您在测试中遇到的问题是您需要将函数作为处理程序传递,而不是undefined
调用alert()
返回的函数。试试这些:
el.addEventListener("foo", alert.bind(window, "hello!"));
或者
el.addEventListener("bar", function(e){ alert("hello "+e.name); });