停止事件

停止事件

问题描述:

我有以下代码:停止事件

$('body').mousemove(function() { 
    $('#covering').fadeOut(500); 
    $('.block div div').fadeOut(250) 
    $('.block div div').css('margin-top','160px') 
    $('.block div div').fadeIn(250); 
}); 

基本上什么,我试图做的是有有一个“覆盖” DIV淡出(如this question)和有几个块元素的内部divs淡出,默默移动,并淡入以获得无缝效果。

但是,运行此操作时,每移动一次鼠标,运行上述所有操作。它提出了一个问题,因为这不是我想要发生的事情(我希望它发生一次,就是这样),我猜测它会减慢浏览器速度,可能会导致堆叠。

我想我已经阅读过某个地方如何阻止执行一次它执行一次,但我不记得它,那么有没有办法做到这一点?谢谢。

$('body').one('mousemove', function() { 
     $('#covering').fadeOut(500); 
     $('.block div div').fadeOut(250) 
     $('.block div div').css('margin-top','160px') 
     $('.block div div').fadeIn(250); 
}); 

更多信息:http://docs.jquery.com/Events/one

尝试One Event。如前所述,它具有以下功能:

将一个处理程序绑定到一个或多个要针对每个匹配元素执行一次的事件。

我认为这是你正在寻找的,这里是一个代码的例子,你在上面使用了一个事件。

$('body').one("mousemove", function() { 
    $('#covering').fadeOut(500); 
    $('.block div div').fadeOut(250) 
    $('.block div div').css('margin-top','160px') 
    $('.block div div').fadeIn(250); 
});