滚动后移动菜单消失

时间:2018-09-10 21:11:27

标签: javascript menu

我的手机菜单在用汉堡菜单单击打开时滚动,在我滚动后消失了。这仅发生在手机上,或者您是在浏览器中更改高度。我在移动设备上滚动后,它会崩溃,因为网站的高度发生了变化,但这就是我得到的结果,但我不知道它为什么发生。

网站链接(https://www.beterlopenwinkel.nl/

这是菜单的javascript代码

(function($) {

 $.fn.menumaker = function(options) {

  var cssmenu = $(this), settings = $.extend({
    title: "Menu",
    format: "dropdown",
    sticky: false
  }, options);

  return this.each(function() {
    cssmenu.prepend('<div id="menu-button"></div>');
    $(this).find("#menu-button").on('click', function(){
      $(this).toggleClass('menu-opened');
      var mainmenu = $(this).next('ul');
      if (mainmenu.hasClass('open')) {
        mainmenu.hide().removeClass('open');
      }
      else {
        mainmenu.show().addClass('open');
        if (settings.format === "dropdown") {
          mainmenu.find('ul').show();
        }
      }
    });

    cssmenu.find('li ul').parent().addClass('has-sub');

    multiTg = function() {
      cssmenu.find(".has-sub").prepend('<span class="submenu-button"></span>');
      cssmenu.find('.submenu-button').on('click', function() {
        $(this).toggleClass('submenu-opened');
        if ($(this).siblings('ul').hasClass('open')) {
          $(this).siblings('ul').removeClass('open').hide();
        }
        else {
          $(this).siblings('ul').addClass('open').show();
        }
      });
    };

    if (settings.format === 'multitoggle') multiTg();
    else cssmenu.addClass('dropdown');

    if (settings.sticky === true) cssmenu.css('position', 'fixed');

    resizeFix = function() {
      if ($( window ).width() > 768) {
        cssmenu.find('ul').show();
      }

      if ($(window).width() <= 768) {
        cssmenu.find('ul').hide().removeClass('open');
      }
    };
    resizeFix();
    return $(window).on('resize', resizeFix);

  });
  };
  })(jQuery);

  (function($){
  $(document).ready(function(){

  $("#cssmenu").menumaker({
  title: "Menu",
  format: "multitoggle"
  });

  });
  })(jQuery);

0 个答案:

没有答案