编辑#2:
做了一个 JS Fiddle... http://jsfiddle.net/N2p6G/(我硬编码了一些我确定可以正常工作的东西,但问题仍然存在)
原来的:
所以,我已经编写了数万行 javascript,并且使用了数百次看起来像这样的代码,但我不明白发生了什么。
blacklistitembutton.onclick = function() {
console.log("clicked.");
}
上面的代码似乎不起作用......我不知道为什么
事实上,我之前在同一个文件中使用了相同的方法......而且效果很好!
settings.onclick = function() {
settings_popup.toggle();
}
编辑:
它可能与它在 for 循环中执行的事实有关吗?这是代码...
var blacklistButton = document.createElement('input');
blacklistButton.type = 'button';
blacklistButton.value = "Add Current Site to Blacklist";
blacklistButton.onclick = function() {
console.log('blacklistButton clicked');
}
for (var i=0;i<blacklist.length;i++) {
var blacklistitembutton = document.createElement('div');
blacklistitembutton.type = 'button';
blacklistitembutton.blacklistValue = blacklist[i];
blacklistitembutton.value = "X";
blacklistitembutton.onclick = function() {
console.log("clicked.");
}
}
然后将 blacklistButton 和所有 blacklistitembuttons 通过 element.appendChild 放入文档中(它们都显示成功!)
blacklistButton onclick 触发得很好,而 blacklistitembutton onclick 则不会。