我是jQuery的新手,如果我的问题有明显的答案我会道歉。我已经研究了解决这种情况的不同方法,但最终都遇到了同样的问题。
我有几个链接在一起的网页,并使用jQuery以相同的方式为每个页面上的菜单栏设置动画。
页面加载菜单栏完全可见,然后向下滚动,因此只有一部分是可见的(我使用jQuery css底值动画实现了这一点)。当用户将鼠标悬停在栏上时,它会移回原始(上载)位置,以便内容再次可见。
问题是我在document.ready上有jQuery代码,连续向下移动栏,然后在悬停时将内容向上移动 - 所以当点击一个链接时页面已加载,菜单栏向上移动了一点(由于鼠标在新页面上的栏上方存在),而不是先完全向下移动。
我希望功能在每个页面上,条形向下移动,以便部分可见,然后在以后的交互中向后移动。
这是我一直在使用的代码,我想帮助分解或插入基于div css底部属性的if-else逻辑或者某些东西以防止条形图先移动然后一直向下移动(这是在第一部分之前执行jQuery代码的第二部分。)
$('#navigation').stop().animate({bottom: '-50px'}, 1500);
$('#navigation').mouseenter(function() {
$('#wrapper').stop().delay(300).animate({bottom: '3em'}, 500);
});
$('#navigation').mouseleave(function() {
$('#wrapper').stop().delay(300).animate({bottom: '0'}, 500);
});
答案 0 :(得分:0)
为了获得我认为你正在描述的效果,我将使菜单'关闭',mouseEnter(doOpen),mouseLeave(doClose)的默认样式。这样,当用户更改页面时,页面加载代码会处理关闭。