我一直在寻找各地,即使我找到了答案,也没有以我能理解的方式提供。我在jsfiddle上玩这个代码,试图理解为什么这个点击处理程序不起作用。如果这是一篇无用的帖子,我会道歉,只是想弄清楚这一切。如果有人知道关于javascript代码如何呈现以及函数如何传递对象等的任何好的教程..请,请链接我!我已经阅读了如何编写函数等的基础知识。但是,在解析代码时,了解最新情况对我来说是完全不同的事情。
以下是我正在努力工作的代码:
http://jsfiddle.net/UumUP/3144/
// Function to change the content of t2
function modifyText(evt) {
var thing = evt.target;
thing.firstChild.nodeValue = "four";
}
// add event listener to t
var el = document.getElementsByTagName("td");
for(i = 0; i < el.length; i++) {
el[i].addEventListener("click", modifyText(evt), false);
}
答案 0 :(得分:1)
您正在调用该函数并传递该调用的结果,而不是传递该函数的引用,而是执行此操作:
el[i].addEventListener("click", modifyText, false);
答案 1 :(得分:0)
el[i].addEventListener("click", modifyText(evt), false);
应该是
el[i].addEventListener("click", modifyText, false);
<强> Check Fiddle 强>