jQuery'mmenu'打开时的回调事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery'mmenu'打开时的回调事件相关的知识,希望对你有一定的参考价值。

使用jQuery mmenu plugin我需要在菜单打开后调用javascript函数。我无法从API documentation看到如何使用插件API来做到这一点,所以我想也许唯一的选择是观察<html>元素上的类名,当菜单打开时它会获得一类mm-opened 。这感觉有点'hacky',所以我想知道是否有人能够在本机API的范围内看到一种方法来完成所需的函数调用?

编辑:与预期相反,当打开菜单时,openPanel事件不会触发 - 它只在子菜单打开时触发,因此虽然这表明它可以完成工作但事实并非如此。

非常感谢。

答案

得到它(没有记录!):

var api = $('#menu').data('mmenu');
api.bind('opened', function () {
    console.log('opened');
});
另一答案

您可以在源代码中搜索.trigger(https://raw.githubusercontent.com/FrDH/jQuery.mmenu/master/dist/js/jquery.mmenu.min.js

您将找到以下事件:

  • 在里面
  • 更新
  • 的setSelected
  • setPage
  • 打开
  • 开盘
  • 打开
  • 关闭
  • 关闭
  • openPanel
  • openingPanel
  • openedPanel
  • closePanel
  • closingPanel
  • closedPanel

我相信是这样的。在其中,您可以看到对您的案例有用的“已打开”和“已关闭”事件。

另一答案
var api = self.$el.data("mmenu");

api.bind('close:finish', function() {
   console.log('close');
});

api.bind('open:finish', function () {
   console.log('open');
});

感谢ChezFre

以上是关于jQuery'mmenu'打开时的回调事件的主要内容,如果未能解决你的问题,请参考以下文章

jQuery mmenu 使页面自动跳转到顶部

mmenu 在移动设备上展开时隐藏地址栏

app.get('/')在网站打开时没有被调用

Word2010打开时总是提示“正在配置”,如何解决?

Eclipse打开时“发现了以元素'd:skin'”开头的无效内容。此处不应含有子元素的解决方法

有没有网页打开时,就执行的JS函数