用 setTimeout("yanci("+ div3 +")",500)调用函数:
function yanci(div)
{
   if(div.mouseover=true)
  {
      div .style.display = "";
   }
}
我的目的是如果在延迟的时间内如果鼠标指针移出div3这个图层则不会执行div .style.display = "";,反之则执行div .style.display = "";
我试了好久,但是出不来效果,高手帮我看一下问题出在哪呀?

解决方案 »

  1.   

    错误1:if(div.mouseover=true) 是==不是=
    错误2:用 setTimeout("yanci("+ div3 +")",500)调用函数
    其实就变成setTimeout("yanci([object])",500)了可以改成
    window.div3=div3;
    setTimeout("yanci(div3)",500);
      

  2.   

    你的代码很离谱了~别的地方肯定也有错~~div.mouseover==true
    mouseover怎么能这么用呢....div .style.display = "";
    div后面又多了空格...
      

  3.   

    我也觉得有点牵强,但是你能给我提供一种判断鼠标指针是不是在<div>上的方法吗?
      

  4.   

    <html>
    <body>
    <div id="div" style="height:300px;width:300px;background:#123456"></div>
    </body>
    </html>
    <script>
    var div=document.getElementById("div");
    window.divs=[];
    window.divs[div.id]=div;
    window.divs.check=function(div){
        div.style.display="none";
    }
    div.onmouseover=function(){
        if(this.timer)clearTimeout(this.timer);
    }
    div.onmouseout=function(){
        var cmd="window.divs.check(window.divs['"+this.id+"'])";
        this.timer=setTimeout(cmd,500);
    }
    </script>