我正在尝试创建一个功能,当您将鼠标悬停在某个对象上时,另一个对象将开始连续移动,直到您将鼠标悬停为止。由于我的代码中的某些原因,它会在前10个像素后停止,这就是
http://jsfiddle.net/JoshuaWaheed/7df29/
$("a").mouseover(function(){
$("div").animate({
"margin-left": "+=" + 10 + "px"
});
});
仅在鼠标悬停时如何使它连续运行?
最佳答案
不要使用.animate
,因为它不是为此设计的。您可以通过在setInterval
循环中更改CSS来自己移动它:
$("a").mouseover(function () {
// store the interval ID on the DOM element itself
$(this).data('tc', setInterval(function () {
$("div").css({
"margin-left": "+=1"
});
}, 20) // milliseconds
);
});
$("a").mouseout(function () {
// clear the interval ID
clearInterval($(this).data('tc'));
});
http://jsfiddle.net/mblase75/5QJTT/
关于javascript - 鼠标悬停时无限 move 对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24678695/