e是标准浏览器传递进去的事件参数,低版本IE不会传递,事件参数放置在window.event对象中,所以兼容低版本的IE要加上这句
e=e||window.event;

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    <body>
    <input type="button" value="点击显示事件属性"  onclick="fun(event)" />
    <script type="text/javascript" language="javascript">
    function fun(e){
    var evt=e||window.event;
    for(var pro in evt){
    document.write('event.'+pro+'='+evt.pro+'<br />');
    }
    }
    </script>
    </body>
    </html>用的时候加不用的时候不用加
    那是一个事件对象可以用for in循环输出里面的属性等一些东西
    其中returnValue和cancelBubble用的还是比较多的
    其他的自己琢磨去吧没什么难的
      

  2.   


    如果在onclick="fun()",而且在函数中删除var evt=e||window.event;能正常运行么?
      

  3.   


    如果在onclick="fun()",而且在函数中删除var evt=e||window.event;能正常运行么?
    能不能正常运行看浏览器兼容程度了之所以这么写就是为了兼容不同的浏览器
    因为event是window对象的二级对象安理说没有问题的。但实际支持未必太好