我试图在鼠标移动上为图像设置动画,我想让它动画回到正常位置,而不使用mouseout。
$(document).ready(function() {
$("#bysti-menu li").mouseover(function(){
var $elem = $(this);
$elem.find('.uprmenuicon')
.animate({
'margin-top':'-40px'
},400,'easeOutBack').animate({
'margin-top':'0px'
},400,'easeOutBack')
}).mouseout(function(){
// do nothing
});
});
这里当我把鼠标悬停在图像上时它的边距变成-40px但是我想在那之后立即变为正常到0px,即使鼠标尚未出现?任何人都可以帮助我吗?
答案 0 :(得分:1)
您可以设置自己的功能来监听正在发生的事件类型:http://jsfiddle.net/dn9wD/1/
答案 1 :(得分:0)
jquery .animate()有一个“完整”参数,一旦动画完成就会被调用。查看文档here。
答案 2 :(得分:0)
示例演示 http://jsfiddle.net/R4bzf/(行为:将鼠标拖动到黄色/橙色面板上,然后执行鼠标移除)
API .stop
将执行诀窍http://api.jquery.com/stop/
希望这会有所帮助,如果我遗漏了任何内容,请告诉我,谢谢
<强>码强>
$(this).stop() // Do whatever - .animate({ left: "-270" }, 500);