首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何注销jquery mmenu

如何注销jquery mmenu
EN

Stack Overflow用户
提问于 2015-05-27 00:13:58
回答 1查看 116关注 0票数 0

我在我的网页中使用jquery mmenu,用于移动设备和桌面分辨率低于1024的设备。在桌面上,我使用一个功能来检查页面加载和调整大小时的分辨率,如果窗口小于1000px,则激活菜单。

我的问题是,当我想要将页面大小调整到1000px时,mmenu删除了我的正常导航,并且不再显示在页面中。

如何注销mmenu并恢复我的第一个状态导航菜单?

这是我的函数:

代码语言:javascript
复制
if($(window).width()<1000){
    $("#webNav").mmenu();
    var API = $("#webNav").data( "mmenu" );

    $("#open-mobile").click(function() {
        API.open();
    });
}
EN

回答 1

Stack Overflow用户

发布于 2015-05-27 00:32:45

查看您的代码,您可以将其包装在一个调整大小的事件侦听器中。

代码语言:javascript
复制
//We keep a reference to the menu object outside the scope of the event check. 
$("#webNav").mmenu();
var API = $("#webNav").data( "mmenu" );

//When a resize occurs, it will run the following. 
$(window).resize(function () { 
   if($(window).width()<1000){
      $("#open-mobile").click(function() {
        API.open();
      });
   }
   else{ // Otherwise we remove the reference to what `data` is. 
   API = $("#webNav").data("");
   }
});

这将在您每次调整屏幕大小时运行您的逻辑。

我还没有测试这个,但它应该可以工作,你可能需要清除事件后,屏幕增加,但让我知道,我可以更新它。

对于较大的大小,它将重置对API对象的相同引用。

$("#webNav").data("");

这应该会清除对象本身。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30463803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档