我有一个看起来像这样的事件处理程序:
$(document).on('click', 'a.close, #mask', Popup.close);
我不知道如何为此事件动态更改函数(Popup.close)。 Popup.close 变量是一个本地函数,可以通过调用 Popup.setClose(func) 来设置,我希望这会更改触发此事件时调用的函数。然后我意识到我可能必须取消绑定(bind)事件,并在每次想要更改 Popup.close() 函数时绑定(bind)新函数。无论如何,我无法弄清楚如何取消绑定(bind)和先前使用 .on('click',...) 方法绑定(bind)的事件。
所以我要问的是,使用 .on() 方法更改 jQuery 事件绑定(bind)的执行函数的最佳方法是什么? 感谢您的帮助。
最佳答案
您可以使用.off("click")
删除事件,然后附加新事件,但这将删除所有点击事件。
$(document).off('click');
或者保留可能已附加的其他事件:
$(document).off('click', 'a.close, #mask');
JS fiddle : http://jsfiddle.net/3Xzjj/
关于javascript - JQuery - 更改绑定(bind)到 $elem.on ('click' ) 事件的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21650792/