var johnson = button.addEventListener('click', function() {
});
我可以用什么方式使用这个变量名。我可以把约翰逊称为某个地方的函数吗?
答案 0 :(得分:3)
johnson
将包含addEventListener
的返回值,但addEventListener
不会返回任何内容。 johnson
将为空。
您当然可以使用命名函数或指向函数的变量作为事件侦听器,但是:
var johnson = function() {
//do stuff
}
button.addEventListener('click', johnson);
现在您可以通过单击按钮或调用
来调用该侦听器功能johnson();
答案 1 :(得分:3)
不,因为您没有为变量分配addEventListener函数,所以您要从执行函数中分配返回的值(在这种情况下,实际上没有任何内容可以查看返回值的示例:http://jsfiddle.net/DKyhW/2/ )。
要分配您需要执行的功能:
var johnson = button.addEventListener;
//this assigns the eventlistener function to the variable.
johnson('click', function () {});
或
var johnson = function () {} //assigns function to variable.
button.addEventListener('click', johnson);
答案 2 :(得分:2)
由于addEventListener
没有返回值,因此您的变量将绑定到undefined
几乎无用。
也许你想要这样的事情:
var johnson = function() { ... }
button.addEventListener('click', johnson);