我很好奇,为什么要加载此事件而不是在click上触发自身。
window.onload=initAll;
function initAll(){
var divPath = document.getElementsByTagName("div")[0];
var theLink = divPath.getElementsByTagName("a")[0];
theLink.onclick = myEvent(theLink);
};
function myEvent (myMan){
myMan.innerHTML="You're my maan,bro!!!";
return false;
};
10倍为您提供的帮助
BR
最佳答案
因为您是将函数调用myEventHandler(theLink)
的结果分配给theLink.onclick
属性。您实际要执行的操作如下:
theLink.onclick = myEventHandler
它为
theLink.onclick
属性的myEventHandler函数分配一个reference。传递给该函数的参数将是event object,从中可以确定实际单击了哪个对象。另外,您可以创建closure:theLink.onclick = function(event) {
myEventHandler(event, theLink);
};
这样,您将获得事件对象和对分配了事件处理程序的对象的引用,这就是您试图在代码中进行的操作(我想是这样)。