<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>

解决方案 »

  1.   

    因为 function EventHandler()并没有被注册成你的元素的事件处理柄
    注册成事件处理柄的是onclick="EventHandler();"其实就是onclick=function(){EventHandler();}的HTML写法
      

  2.   

    补充一点onclick="EventHandler();"
    在被解释的时候被解释成 HTMLElement.onclick=new Function("EventHandler();");
      

  3.   

    进行一下比较试验,LZ 一看便知L@_@K试验代码一 <body>
      <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>