窗口。## EventListener从函数返回时不工作

时间:2014-10-01 07:30:43

标签: javascript if-statement javascript-events ternary-operator

我确实在搜索栏中查找了这个内容,所以不要试图将此标记为#34;已经回答过了。"

所以在我的代码中我有多个使用window.add(remove)EventListener(...)的函数。我从youtube频道找到了这个技巧,那个人使用了一个函数来获取document.getElementById,而不是写了很多次。但它不起作用,我试过这样的事情:

function addListen(x, y) {
   return window.addEventListener(x, y);
}

然后可以这样称呼它:

...addListen("scroll", funcName)..

具体来说,我是从一个三元运算符调用它:i ==#? addListen(x,y):...

1 个答案:

答案 0 :(得分:0)

我的简单示例有效(http://jsfiddle.net/NameFILIP/ohxjarnq/2/):

function addListen(x, y) {
  return window.addEventListener(x, y);
}
function doNothing() {}
var i = 3;
i === 3 ? addListen("click", function () { 
  alert('clicked');   
}) : doNothing();

您的三元运营商可能出了什么问题?检查是否已执行addListen功能?考虑到建议始终使用===。

您还可以使用Visual Event技巧来检查您的事件监听器。