我在几个div的onmouseover和onmouseout上调用此函数。

//Takes effect on divs with id, 62,63,64,65...
function slide_it(id){

    $('#options_'+id).slideToggle('slow');

}

问题是,如果我先将鼠标移到然后移出鼠标,然后再将鼠标移到然后移出鼠标。如果多次执行此操作,则滑动效果会发生与按预期将鼠标移入和移出div相同的次数。

但是我不知道一旦我该怎么做?我可以设置一个变量,但是我有几个使用该函数的div,我想不出一种简单的方法而不是将其存储到数组中,但这很麻烦!

我真的很感谢在此方面易于实现的任何帮助!

谢谢大家的帮助

最佳答案

在调用 slideToggle() 之前,请使用 .stop(true) ,这将结束当前动画(如果有的话),并且由于要进行链接,因此将立即开始提供的动画,如下所示:

$('#options_'+id).stop(true).slideToggle('slow');

From the docs:



示例:如果您快速地将鼠标悬停,那么我就等不及要完成滑动,它会停止它并在鼠标离开后立即开始滑动。

09-17 16:17
查看更多