大家好
我想做个鼠标悬停文本框滚动的效果
我希望鼠标在上面的时候就一直滚,离开就不滚
于是写了$(document).ready(function(){
$("#up_btn").hover(function(){
var new_num = parseInt($("#move_box").css("top"));
$("#move_box").css("top",new_num+1);
})
})
但是我鼠标悬停后只滚了一次
有没办法让他一直滚直到我鼠标离开呢?
请求高手解答,谢谢了!

解决方案 »

  1.   


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="gb2312" />
    <title></title>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <style>
    div {
    position:absolute; top:300px; left:200px;
    width:20px; height:20px;
    border:1px solid red;
    }
    </style>
    </head>
    <body>
    <button id="up_btn">hover</button>
    <div id="move_box"></div>
    <script>
    var timer;
    $(document).ready(function(){
    $("#up_btn").hover(function(){
    timer = setInterval(function(){
    var new_num = parseInt($("#move_box").css("top"));
    $("#move_box").css("top",new_num+1);
    }, 30)
    }, function(){
    clearInterval(timer);
    })
    })
    </script>
    </body>
    </html>
    参考下
      

  2.   

    $(document).ready(function(){
            $("#up_btn").hover(
            setInterval(function(){
            var new_num = parseInt($("#move_box").css("top"));
            $("#move_box").css("top",new_num+1);
        };
    ,1000))
    })
    试试。。
      

  3.   

    $(document).ready(function() {
        $("#up_btn").hover(
        setInterval(function() {
            var new_num = parseInt($("#move_box").css("top"));
            $("#move_box").css("top", new_num + 1);
        }, 1000))
    })
    上面多了个分号。。
      

  4.   

    非常感谢2位,这个实现的需求一定要用计时器吗?
    jquery这么高级了...不能始终判断hover事件吗?
      

  5.   

    hover 值 mouseover 和mouseout
    又不是 一直 触发