提前感谢您查看此内容。
基本上,我正在调用didInsertElement()并将事件绑定到DOM $(document).on(...)
我正努力成为一名彬彬有礼的开发人员并使用willDestroyElement致电$(document).off(...)
。
但是,由于我可能有多个绑定到$(document)
的东西,我需要指定要删除的功能。当我这样做时,jQuery劫持Ember的this
并使用它自己的HTMLElement
JsFiddle: http://jsfiddle.net/brennan/H65Ax/
有更好的方法吗?
答案 0 :(得分:1)
像这样修改你的代码:
didInsertElement: function(){
var self = this;
//storing `click` handler on new property `addedListener`
$(document).off('click', self.addedListener = function(){
self.set('isActive', false);
});
},
willDestroyElement: function(){
var self = this;
$(document).off('click', self.addedListener);
},