在不同的div上同时发生的事件?

时间:2014-05-09 22:15:45

标签: javascript jquery

在我的jquery代码中,我希望将菜单向上滑动,从而向上移动用于单击它的按钮。我希望这可以在同一时间发生,但我还没有找到同时在不同的div上做两种方法。

我正在使用的当前javascript是:

$( "#mobile-menu-button" ).click(function() {
if ($("#mobile-menu").css("display") == "block") {

   $('#mobile-menu').slideUp("slow");
 $('#mobile-menu-button').animate({top:"0px" }, 700 );


     var h = $('.navigation').css("height").replace("px", "");


}
else{
  $('#mobile-menu').slideDown("slow");
  var h = $('.navigation').css("height").replace("px", "");
  $('#mobile-menu-button').animate({top:h},300);
 }
});

这是我当前代码的缩写:http://jsfiddle.net/FM92V/

1 个答案:

答案 0 :(得分:1)

为了以任何方式移动元素(或为它们设置动画),时间必须相同。如果用字符串' slow'替换毫秒,它就能正常工作。

$( "#mobile-menu-button" ).click(function() {
if ($("#mobile-menu").css("display") == "block") {

   $('#mobile-menu').slideUp("slow");
 $('#mobile-menu-button').animate({top:"0px" }, 'slow');


     var h = $('.navigation').css("height").replace("px", "");


}
else{
  $('#mobile-menu').slideDown("slow");
  var h = $('.navigation').css("height").replace("px", "");
  $('#mobile-menu-button').animate({top:h},'slow');
 }
});

更新了jsFiddle:http://jsfiddle.net/FM92V/2/。另外,从CSS中的height:75%中移除#mobile-menu