我在重复 jQuery 动画时遇到了麻烦,关于 stop() 的传统建议似乎没有帮助。
我有一个图像。当用户将鼠标悬停在图像上时,我想要一个白色的透明覆盖层从右侧滑入。当用户鼠标移出时,我希望它消失。
我的代码部分有效,但前提是用户在图像左侧进出鼠标(即远离叠加层)。如果用户在显示时将鼠标悬停在覆盖层上,这似乎算作 mouseout 事件并触发动画,这不是我想要的。一旦发生这种情况,动画就会开始重复。
的HTML:
<img src="Crowded_bookshelf.png" height="367" width="367" id="theImage">
<div id="overlay1"></div>
CSS:
#theImage {
border-radius: 184px;
}
#overlay1 {
height:400px;
width:240px;
background-color:white;
opacity:0.9;
position:absolute;
left:400px;
top:60px;
}
jQuery:
$('#theImage').hover(
function() {
$('#overlay1').animate(
{
left: '190px'
},
1000
);
},
function() {
$('#overlay1').animate(
{
left: '400px'
},
1000
);
}
);
任何帮助将不胜感激。