使用jQuery来切换marginLeft?

我有一个100%宽度的菜单,然后我正在检查宽度并将其从屏幕上抛出。 我想要实现的是切换marginLeft效果。

我有这个,显然不会重新进入。我正在为他们工作。

var em = $(window).width() / parseFloat($("body").css("font-size")); emEm = em+'em'; //change px to em and add em unit ie XXem $('nav').width(emEm); //makes nav full width in em's $('nav').css('margin-left','-'+emEm); //throws nav off screen $('.menu').click(function() { $('nav').animate({ marginLeft: '0' //bring nav back on screen }, 300); }); 

有没有办法切换菜单点击function?

谢谢

分别做-100%0

http://jsfiddle.net/DerekL/5xrGu/

 $('nav').animate({ marginLeft: '-100%' }, 300); 
 $('.menu').click(function() { $('nav').toggle(function() { $('nav').animate({marginLeft: "0"}, 300}, function() { $('nav').animate({marginLeft: "100%"}, 300}); 

编辑了这篇文章。 看这个。 我知道它可以更快更短,但现在这将有效。