我有一个导航,你可以在这里看到:http: //hutchcreative.co.uk/rod/。如果您单击菜单图标然后联系,您可以看到图标变为 X。我想在此添加动画,而不是使用 .hide() 和 .show()。但是,每当我添加 .animate 时,它似乎并不适用。这是否意味着我不能用 .animate 替换 .show()?我必须以某种方式将两者结合起来吗?
我在下面发布了我的 jquery:
$('#menuIcon').toggle(function(){
$('#navigationWrapper ul').show();
$("#navigationWrapper").addClass('activenav');
},
function(){
$('#navigationWrapper ul').hide();
$("#navigationWrapper").removeClass('activenav whiteSection');
});
$('#navigationWrapper #menu-item-59').click(function(){
if($("#navigationWrapper").hasClass('whiteSection')){
$('#contactWrapper').slideUp("slow");
$("#navigationWrapper").removeClass('whiteSection').addClass('activenav');
$('#menuIcon').animate({
opacity: "show"
}, {
duration: "slow",
easing: "easein"
});
$('#closeIcon').hide();
}
else{
$('#contactWrapper').slideDown("slow");
$("#navigationWrapper, #navBlog").addClass('whiteSection');
$('#menuIcon').hide();
$('#closeIcon').animate({
opacity: "show"
}, {
duration: "slow",
easing: "easein"
});
}
});
$("#closeIcon").click(function () {
$('#contactWrapper').slideUp("slow");
$('#menuIcon').animate({
opacity: "show"
}, {
duration: "slow",
easing: "easein"
});
$('#closeIcon').hide();
$("#navigationWrapper, #navBlog ").removeClass('whiteSection').addClass('activenav');
});
$('#navBlog #menu-item-59').click(function(){
if($("#navBlog").hasClass('whiteSection')){
$('#contactWrapper').slideUp("slow");
$("#navBlog").removeClass('whiteSection').addClass('activenav');
$('#menuIcon').animate({
opacity: "show"
}, {
duration: "slow",
easing: "easein"
});
$('#closeIcon').hide();
}
else{
$('#contactWrapper').slideDown("slow");
$("#navBlog").addClass('whiteSection');
$('#menuIcon').hide();
$('#closeIcon').animate({
opacity: "show"
}, {
duration: "slow",
easing: "easein"
});
}
});
我试图实现的外观是,当您单击联系人时,菜单图标向上滑动并且 X 从底部向上滑动,因此看起来它基本上是在将其推开。