使用了jquery库。
具体我想要这样的效果,加入鼠标在 div1 上停留时间超过2秒,则显示div2,若2秒内移出,则不显示。
估计有的朋友要说用 setTimeout(myfun,2000) 这样的方法哈,这个样子确实延迟了2秒,但是只是延迟2秒,如果2秒内我把鼠标移出去了仍然要执行。请教各位有没有什么方法能实现我需要的效果啊,谢谢!

解决方案 »

  1.   

    在mouseout的时候cleartimeout, 再次进入的时候, 重新settimeout...
      

  2.   


    var handle = null;
    $('#div1').mouseover(function () {
        handle = setTimeout(fn, 2000);
    }).mouseout(function () {
        clearTimeout(handle);
    });
      

  3.   

    $(document).ready(function(){
        var handle = null;
    $('#div1').mouseover(function () {
    handle = setTimeout(function(){alert("1")}, 2000);
    }).mouseout(function () {
    clearTimeout(handle);
    alert("2")
    });
    });
    这样可以
      

  4.   

    setInterval clearInterval和setTimeout 一样的