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

Callback event when jQuery 'mmenu' opened

使用 jQuery mmenu plugin I need to call a JavaScript function after the menu has finished opening. I can't see from the API documentation 如何使用插件 API,所以我想也许唯一的选择是观察 class <html> 元素上的名称,在打开菜单时获得 mm-opened 的 class。不过这感觉有点 'hacky',所以我想知道是否有人可以在本机 API 的范围内找到一种方法来完成所需的函数调用?

编辑:与预期相反,openPanel 事件不会在菜单打开时触发 - 它仅在子菜单打开时触发,所以尽管这表明它可以完成工作,但它不会t.

非常感谢。

知道了(没有记录!):

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

您会发现以下事件:

  • 初始化
  • 更新
  • 设置已选
  • 设置页面
  • 打开
  • 开幕
  • 打开
  • 关闭
  • 关闭
  • 关闭
  • 打开面板
  • 打开面板
  • 打开面板
  • 关闭面板
  • 关闭面板
  • 关闭面板

我相信就是这些了。其中,您可以看到对您的案例有用的 'opened' 和 'closed' 事件。

var api = self.$el.data("mmenu");

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

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

感谢 ChezFre