在火狐和IE9下event 始终为NULL,在网上找了很久,也没有结果。<html>
<head>
    <title></title>
<script type="text/javascript">
        function DoRightClick(event){
        event = (event)?event:window.event; 
        //event=event||event;
        alert(event.clientX);
    }
</script>
</head>
<body onmousedown="window.setTimeout('DoRightClick(event);',400)">
</body>
</html>

解决方案 »

  1.   

    alert(event)你自己看看是什么结果onmousedown="window.setTimeout('DoRightClick(event);',400)">都不知道你到底传什么过去。。就一个event
      

  2.   

    我觉得这个问题是由于setTimeout这个方法引起的
      

  3.   


    <!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>
        <title></title>
    </head>
    <body>
    <script type="text/javascript">
        document.oncontextmenu = test;    function DoRightClick(cx) {
            document.getElementById("odiv").innerHTML=cx;
        }
        function test(e) {
            var evn = window.event || e;
            var cx = evn.clientX;
            setTimeout(function () { DoRightClick(cx); }, 400);
            return false;
        }
        </script>
        <div id="odiv"></div>
    </body>
    </html>
      

  4.   

    LZ好方法 其实就是js在FF下的双击事件问题才加上的setTimeout