推荐使用 jQuery UI Widget Factory 删除销毁事件的方法



我正在使用jQuery UI Widget Factory来构建一个jQuery插件。

我的插件将自定义事件绑定到窗口...

_subscribe: function() {
  $(window).on("dragger.started", function() { ... });
}

我想知道如何在插件的特定实例被销毁时删除这些事件。 如果我使用...

destroy: function() {
  $(window).off("dragger.started");
}

。然后,这将弄乱页面上插件的任何其他实例,因为它将删除所有"dragger.started"事件。

仅销毁与插件实例关联的事件的建议方法是什么?

感谢(提前)您的帮助。

可以在一个事件中绑定多个命名空间。 因此,为您的实例分配一个 ID 如下

//this.id = 'dragger_' + guid_or_static_count
$(window).on("dragger.started." + this.id, function() { ... });

后来

$(window).off('dragger.' + this.id);

看到这个小提琴

你用什么来摆脱实例? 我相信jQuery remove()会删除绑定事件。

最新更新