所以今天我想制作一个简单的动画,当我将鼠标悬停在按钮上时按钮会变大,当鼠标离开按钮时会缩小。我尝试使用这个简单的 JQuery 代码,但问题是如果我将动画速度放慢,多次打开和关闭按钮会创建多个动画队列,这将在我的鼠标离开按钮后运行很长时间.
如果鼠标离开按钮,有没有办法在缩小队列后终止队列?显然我想在按钮缩小后杀死队列以使动画生效。
相关 HTML:
<div id="global-nav">
<ul id="top-nav">
<li class="nav-list"><a class="nav" href="http://images6.fanpop.com/image/photos/33400000/Cats-cats-33441067-1280-800.jpg">Link1</a></li>
|
<li class="nav-list"><a class="nav" href="http://images4.fanpop.com/image/photos/16100000/-cats-16140154-1920-1080.jpg">Link2</a></li>
|
<li class="nav-list"><a class="nav" href="http://learningfromdogs.files.wordpress.com/2010/09/cats-in-sink.jpg">Link3</a></li>
|
<li class="nav-list"><a class="nav" href="http://25.media.tumblr.com/55b8c778e82b28aef27be5d6da8eaa7e/tumblr_meysfu2tM91qzv52ko1_500.jpg">Link4</a></li>
</ul>
</div>
相关的 JavaScript:
$(document).ready(function() {
$(".nav").mouseover(function() {
$(this).animate({
paddingTop:'6px',
paddingRight:'4px',
paddingBottom:'6px',
paddingLeft:'4px'
},"slow");
}).mouseout(function() {
$(this).animate({
paddingTop:'3px',
paddingRight:'2px',
paddingBottom:'3px',
paddingLeft:'2px'
},"slow");
});
});
JSFiddle:http://jsfiddle.net/76tna/
请原谅其他 CSS、cat 文本和 HTML。我指的是导航栏中的按钮。 (如果你好奇的话,这是给我妹妹的。)
最佳答案
在开始下一个动画之前,您需要.stop()
当前动画,否则它将按照您当前观察到的方式排队。
关于javascript - JQuery 使过多的动画队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17057896/