这里是我的代码:为什么我得到TypeError:obj.addEventListener不是一个函数?
function addEvent(obj, type, fn) {
if (obj.attachEvent) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event);}
obj.attachEvent('on'+type, obj[type+fn]);
} else
obj.addEventListener(type, fn, false);
}
function alertWinner(){
alert("You may be a winner!");
}
function showWinner(){
var aTag = document.getElementsByTagName("a");
addEvent(aTag, 'click', alertWinner);
}
showWinner();
基本上,我在Firebug控制台的工作,并试图得到一个警报被点击任何一个标签时弹出。
我无法看到导致此问题无法正常工作的问题,并给出了我的问题标题(在Firebug中查看)中指出的错误。任何人?
它不是一个数组,它是一个NodeList。 – VisioN 2013-03-18 19:20:05
@VisioN你说得对,已经更新了我的答案。 – 2013-03-18 19:21:17
这似乎应该工作,但我现在得到:referrenceError:aTags没有定义。 – max7 2013-03-18 19:24:17