我正在尝试使用一些jQuery和HTML。
我有两个包含各种内容的div
元素容器。这两个元素彼此相邻。 div不相互包含。我编写了代码,以便当我鼠标悬停一个div(div#1
)时,另一个div(div#2
)向下滑动(.slideDown
)。
此外,当您鼠标移出div#2
时,div#2
向上滑动(.slideUp
)。
问题是,如果div#2
已经滑落,如果再次鼠标悬停div#1
,div#2
会向上滑动并再次向下滑动。这非常烦人且不专业。只有当我的鼠标没有超过div#1
时,我才需要它向上滑动。
这是我的目标:我需要找到一个jQuery语句,
“只有当鼠标”超出“div#2
且没有”超过“ div#1
时,才会向上滑动div#2
。”
这可能吗?
我感谢任何帮助。
感谢。
答案 0 :(得分:3)
在重新设置元素动画之前,您需要使用.stop()
来停止动画。这将防止队列填满重复的动画:
$('#stop').hover(function() {
$(this).stop().animate({width: '250px'});
}, function() {
$(this).stop().animate({width: '150px'});
});
答案 1 :(得分:0)
如果我理解你的问题你应该这样做:
$('.div1').die('mouseover').live('mouseover',function(){
$('.div2').slideDown();
});
$('.div2').die('mouseover hover').live('mouseout',function(){
$('.div2').slideUp();
});