Javascript JQuery悬停问题

Javascript JQuery悬停问题,javascript,jquery,Javascript,Jquery,我使用jquery hover方法调用函数,如下所示 $(<some_element>).hover(function(){animate("next",true);},function(){}); 但是,仅当鼠标进入元素时才调用animate函数。我希望它一直被调用,只要鼠标还在元素上 有什么办法可以做到这一点 谢谢。您可以使用mouvemove,但如果鼠标停留在您的元素上不活动,它将无法工作 从“设置动画”方法的中: .设置属性动画、[持续时间]、[缓和]、[回调] 回调:动画

我使用jquery hover方法调用函数,如下所示

$(<some_element>).hover(function(){animate("next",true);},function(){});
但是,仅当鼠标进入元素时才调用animate函数。我希望它一直被调用,只要鼠标还在元素上

有什么办法可以做到这一点


谢谢。

您可以使用mouvemove,但如果鼠标停留在您的元素上不活动,它将无法工作

从“设置动画”方法的中:

.设置属性动画、[持续时间]、[缓和]、[回调]

回调:动画完成后调用的函数


所以我认为你可以有一个回调,如果鼠标仍然在你的元素上,那么调用.animatenext,。。。再次说明。

您可以使用mouvemove,但如果鼠标在元素上保持不活动状态,它将无法工作

从“设置动画”方法的中:

.设置属性动画、[持续时间]、[缓和]、[回调]

回调:动画完成后调用的函数

所以我认为你可以有一个回调,如果鼠标仍然在你的元素上,那么调用.animatenext,。。。再来一次。

试试这个:

var interval_id;
$(<some_element>).hover(
    function(){
        // start interval
        interval_id = setInterval( function() {
            // called every 100ms as long as the elem is hovered
            animate("next",true);
        }, 100 );
    },
    function(){
        // stop interval
        clearInterval( interval_id );
    }
);
试试这个:

var interval_id;
$(<some_element>).hover(
    function(){
        // start interval
        interval_id = setInterval( function() {
            // called every 100ms as long as the elem is hovered
            animate("next",true);
        }, 100 );
    },
    function(){
        // stop interval
        clearInterval( interval_id );
    }
);

您可以在没有全局变量等的情况下执行此操作:

$(<some_element>).hover(function(){
  $(this).data("anim",setInterval(function() { animate("next",true); }, 500));  
},function(){
  clearInterval($(this).data("anim"));
});

这种方法也适用于多个元素,因为间隔存储在本地。只需将500半秒更改为您想要的动画频率。

您可以在没有全局变量的情况下执行此操作,等等:

$(<some_element>).hover(function(){
  $(this).data("anim",setInterval(function() { animate("next",true); }, 500));  
},function(){
  clearInterval($(this).data("anim"));
});
这种方法也适用于多个元素,因为间隔存储在本地。只需将500半秒更改为您想要设置动画的频率