<div id="elmtDiv" onclick="EventHandler();">division element</div>
仅仅是方法调用,而非事件注册!以下写法才是,L@_@K <body>
<div id="elmtDiv">division element</div>
<script type="text/javascript">
<!--
function EventHandler(){
//在此使用this,this引用的是window对象。
alert(this.tagName);
}
document.getElementById("elmtDiv").onclick = EventHandler;
//-->
</script>
</body>
仅仅是方法调用,而非事件注册!以下写法才是,L@_@K <body>
<div id="elmtDiv">division element</div>
<script type="text/javascript">
<!--
function EventHandler(){
//在此使用this,this引用的是window对象。
alert(this.tagName);
}
document.getElementById("elmtDiv").onclick = EventHandler;
//-->
</script>
</body>
注册成事件处理柄的是onclick="EventHandler();"其实就是onclick=function(){EventHandler();}的HTML写法
在被解释的时候被解释成 HTMLElement.onclick=new Function("EventHandler();");
<div id="elmtDiv" onclick="EventHandler();">division element</div>
<script type="text/javascript">
<!--
function EventHandler()
{
//在此使用this,this引用的是window对象。
alert(this.tagName);
}
//document.getElementById("elmtDiv").onclick = EventHandler;
alert(document.getElementById("elmtDiv").onclick); // 匿名函数调用了自定义函数 EventHandler();
//-->
</script>
</body>
试验代码二 <body>
<div id="elmtDiv">division element</div>
<script type="text/javascript">
<!--
function EventHandler(){
//在此使用this,this引用的是window对象。
alert(this.tagName);
}
document.getElementById("elmtDiv").onclick = EventHandler;
alert(document.getElementById("elmtDiv").onclick); // 匿名函数被自定义函数 EventHandler() 所替代了,事件处理函数注册成功!
//-->
</script>
</body>