是要鼠标停留超过1秒才出发,不是settimeout...
这个是立即出发,只不过延迟执行...马上没分了,,晕

解决方案 »

  1.   

    加个标记和 setTimeout 配合就行了
    <script>
    var flag = false;// 标记,是否移动到图片上了
    function onImg(){
    setTimeout("if(flag){doSomething();}", 1000);
    }function doSomething(){
    alert(123);
    }
    </script>
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" onmouseover="flag=true;onImg();" onmouseout="flag = false;" />
      

  2.   

    <script>
    var timer = null;
    function callback() {
    alert('Yes');
    }
    function onSecondDelay(callback) {
    clearTimeout(timer);
    timer = setTimeout(callback, 1000);
    }
    </script>
    <span onmouseover="onSecondDelay(callback);" 
      onmousemove="onSecondDelay(callback);"
      onmouseout ="clearTimeout(timer);">target</span>
      

  3.   

    还是搞不定.....
    我的DIV是动态的,如果1秒内,我从一个DIV,移动到另一个DIV上,flag又成true了,之前的事件又出发了
      

  4.   

    改为IMG的自定义属性
    <script>
    function onImg(img){
    setTimeout(function(){
    doSomething(img);
    }, 1000);
    }function doSomething(img){
    var flag = img.flag;
    if(flag == true || flag == "true"){
    document.getElementById("divMsg").innerHTML = img.id + "---" + img.flag;
    }
    }
    </script>
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img1" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img2" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img3" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img4" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img5" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img6" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img7" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img8" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" />
    <img src="http://c.csdn.net/bbs/t/5/i/pic_logo.gif" id="img9" onmouseover="this.flag=true;onImg(this);" onmouseout="this.flag=false;" /><div id="divMsg"></div>
      

  5.   

    5楼的,如果callback函数带参数,那要怎么写啊
      

  6.   

    var t = 1000;
    function bind(elem){
       //  如果鼠标已经在上面
       if(!elem.flag )
          elem.onmouseover = function(){
               elem.flag = true;   //说明鼠标移到上面
      setTimeout(function(){if(elem.flag ) 
    myF (elem, "4"); }, t);   //  隔 t 后 , 查看鼠标是否在上,如果在则调用预设的};
        elem.onmouseout = function(){elem.flag = false; //   说明鼠标移出上面
       };
    }function myF(p, v){   //函数
      alert( p.id + ":" +v );
    }bind( document.getElementById('div') );   //  绑定一个 div   #div
      

  7.   


    elem是什么,不用先定义吗?