如何停止jQuery缓冲悬停效果
How to Stop jQuery from Buffering Hover Effects?
我有两个图像堆叠在一起,并试图使用它进行导航。在悬停时,我使用jQuery将光标移到0,并在光标离开时返回到1。这是有效的,但这是我的问题。如果将鼠标光标在列表项上来回移动几次,则会缓冲效果。如何从缓冲区阻止它?谢谢
编写脚本
$(document).ready(function () {
$("li").hover(function(){
$(this).fadeTo(250, 0);
},function(){
$(this).fadeTo(350, 1);
});
});
HTML
<div id="link1img"></div>
<ul>
<li id="link1"><a href="index.html">Home</a></li>
</ul>
CSS
#link1 {
background-image: url(../images/home_normal.png);
background-repeat: no-repeat;
text-indent: -9999px;
position: absolute;
height: 17px;
width: 67px;
left: 0px;
top: 10px;
}
#link1img {
background-image: url(../images/home_mo.png);
background-repeat: no-repeat;
position: absolute;
height: 17px;
width: 67px;
left: 0px;
top: 11px;
}
在继续之前使用.stop()
停止旧效果:
$(document).ready(function() {
$("li").hover(function() {
$(this).stop().fadeTo(250, 0);
}, function() {
$(this).stop().fadeTo(350, 1);
});
});
使用.stop(true)
取消该对象上当前正在进行的任何动画,并将其从动画队列中删除,这样您的下一个动画就可以立即开始,而不必等到当前动画完成:
$(document).ready(function () {
$("li").hover(function(){
$(this).stop(true).fadeTo(250, 0);
},function(){
$(this).stop(true).fadeTo(350, 1);
});
});
有关更多信息,请参阅.stop()
上的jQuery参考。
相关文章:
- 当鼠标悬停在文本中的单词上时显示警报
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 手风琴可点击并悬停
- 悬停功能触发器
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 鼠标悬停事件影响列表中所有行中的按钮,而不仅仅是特定按钮
- 引导程序:在导航栏中,显示悬停在单个位置的基于Li Link的不同内容
- css(或jQuery)悬停时淡入淡出
- jquery快速悬停问题
- 如何在悬停时流畅地更改单词
- jQuery:当屏幕大小改变时,如何更改默认图像和悬停图像
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- Flexslider导航按钮在悬停时不可见,带有橙色框
- 使用Javascript,如何显示<tr>在另一<tr>悬停时,隐藏第二个<tr>
- 在鼠标悬停时展开列表
- 导航菜单-悬停时的背景行为怪异
- OpenLayers在悬停时高亮显示功能,并在单击时选择
- jQuery悬停在没有鼠标悬停的情况下启动
- 鼠标悬停时如何居中放大背景图像
- 如何停止jQuery缓冲悬停效果