我对jquery相当新,并且想知道这是否是实现我想要的合法方式。
我正在尝试在用户点击链接时为内容设置动画,然后转到网址,然后再次向下滑动内容。
我认为这种方式有优势(如果我错了,请纠正我):
为实现这一目标,我创建了以下代码:
$('#content').hide(); // hide the content div
$('#subnavext, #subinfo').hide(); // hide sidenav
$('#content').slideFadeToggle(1000); // slide the content down
$('#subnavext, #subinfo').fadeIn(1000); // this fades in extra navigation
var $content = $('#content');
/* this happens when u user clicks the main nav */
$('#menu a').click(function(ev) {
ev.preventDefault();
var $self=$(this);
$('#subnavext, #subinfo').fadeOut(1000);
$content.slideFadeToggle(1000, function() {
document.location = $self.attr('href');
});
$('#content').slideFadeToggle(2000); // TO MAKE FIREFOX BACK BUTTON WORK
$('#subnavext, #subinfo').fadeIn(2000); // TO MAKE FIREFOX BACK BUTTON WORK
});
/* This happens when a user clicks the sidenav */
$('#subnavext a').click(function(ev) {
ev.preventDefault();
var $self=$(this);
$content.slideFadeToggle(700, function(){
document.location = $self.attr('href');
});
$('#content').slideFadeToggle(2000); // TO MAKE FIREFOX BACK BUTTON WORK
});
请给我一些反馈,我可以这样做,还是有更简单的方式
感谢名单,