我一直在开/关删除我不想的事件处理程序时遇到问题,并且希望使用 html 元素的 expando id 命名事件绑定。
function SomeWidget(el) {
$(document).on('handler.MY_EXPANDO_ID', this.handler.bind(this));
};
var widget = new SomeWidget($(sometargetelement));
没有唯一标识符的问题是,目前我有相同的命名空间,当我同时有两个小部件时,它搞砸了,一个被删除,它删除了两个对象的处理程序。
问题 1) 如何访问元素的内部 expando id?问题2)有没有更好的方法来做到这一点?Function.bind !== 函数,这使得无法根据实际方法指针进行删除
我正在使用 jQuery 1.8.3