onmouseover="MM_showHideLayers('Layer1','visible',event)"

解决方案 »

  1.   

    最好使用兼容性好的jquery。
    MM_showHideLayers这种写法好像是dreamweaver里面生成的东西吧
      

  2.   

    MM_showHideLayers('Layer1','visible',event)我也这么写过
    但是依然是不行啊。var mousePos=mousePos(args[i+2])
    告知依然对象为空
      

  3.   

    你这样:
    <input id="button" type="button" style="left:50px;top:100px; position:absolute" value="showbox11" onmouseover="MM_showHideLayers('Layer1','visible')" onmouseout="MM_showHideLayers('Layer1','hidden')" />等同
    document.getElementById('button').onmouseover = function(e){
    MM_showHideLayers('Layer1','visible')
    }所以获不了e.
      

  4.   

    但是window.event不是一个全局变量吗,不是都可以用吗?那怎么办,大神
      

  5.   

    这样不就可以了
    document.getElementById('button').onmouseover = function(e){
    MM_showHideLayers('Layer1','visible',e)
    }
      

  6.   

    你那2个""也够厉害的。
    你的input 看不看的见。<!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <div>dddd</div>
    <input type='button' value='showbox11' id='button'><script type="text/javascript">
    function mousePos(ev)
    {
        //firefox等浏览器的鼠标坐标
        if(ev.pageX||ev.pageY)
        {
            return{x:ev.pageX,y:ev.pageY};
        }
        else
        {
            //msie的鼠标坐标
            return{x:ev.clientX+ document.body.scrollLeft - document.body.clientLeft,y:ev.clientY+ document.body.scrollTop - document.body.clientTop};
        }
    }
    function MM_showHideLayers()
    {
        var v,obj,point;
        var args=MM_showHideLayers.arguments;//得到所有参数,无穷重载
        /*  
        for(var i=0;i<args.length;i+=2)
        {
            if((obj=MM_findObj(args[i]))!=null)
            {
                v=args[i+1];
                if(obj.style)
                {
                    //alert(window.event.type);
                    //var mousePos=mousePos(window.event);
                    obj=obj.style;
                    v=(v=='visible')?'visible':'hidden';
                    //alert(mousePos.x+mousePos.y);
                    obj.left=window.event.clientX;
                    obj.top=window.event.clientY;
                    obj.visibility=v;
                }
            }
        }
        */
    }
    //var $a =document.getElementById('button');
     
    document.getElementById('button').onmouseover = function(e){
    MM_showHideLayers('Layer1','visible',e)
    }
    document.getElementById('button').onmouseover = function(e){
    MM_showHideLayers('Layer1','hidden',e)
    }

    </script></body>
    </html>
      

  7.   

    FF chrome 浏览器,event 在事件触发的瞬间才有效。document.getElementById('button').onmouseover = function(e){
    MM_showHideLayers('Layer1','visible',e)
      

  8.   

    这样写试试 
    document.getElementById('button').onmouseover = function(e){
        var e = event || window.event;
        MM_showHideLayers('Layer1','visible',e)
        }