主干和 jQuery 事件
我有一个简单的任务 - 从 DOM 元素检索点击侦听器函数。
我遇到了两个问题:
- 我不知道如何获取通过
addEventListener
函数设置的事件监听器 $(element).data('events')
总是empty
谈论第一个问题 - 我认为这并不重要,因为我只在一个地方使用这个函数。但第二个问题是一个巨大的痛苦...
我已经在纯 jQuery 环境上进行了测试:
$(element).click(function(){})
$(element).data('events') /*contains events info*/
但是对于 Backbone:
$(element).click(function(){})
$(element).data('events') /*alway empty*/
我不是 JS 大师,但似乎根本没有绑定数据..也许这只是典型的 Backbone 行为,但仍然 - 我如何检索事件处理程序?
I have a simple task - retrieve click listener function from DOM element.
I've fased two problems:
- I have no idea how to obtain event listener, that was set via
addEventListener
function $(element).data('events')
is always empty
Talking about first problem - I think it's not critical as I'm using this function only in one place. But the second problem is a huge pain...
I've tested on pure jQuery environment:
$(element).click(function(){})
$(element).data('events') /*contains events info*/
But with Backbone:
$(element).click(function(){})
$(element).data('events') /*alway empty*/
I'm not a JS guru but it seems like there no bound data at all... Maybe it's just a typical Backbone behaviour, but still - how can I retrieve event handler?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您使用 Backbone.js,您应该在 Backbone.View 对象内管理事件,并且避免直接使用 JQuery 捕获事件。
您应该尝试这样的操作:
PS:一个了解其工作原理的好教程: http://arturadib.com/你好-backbonejs/
If you are using Backbone.js you should be managing your events inside a Backbone.View object and avoid capturing the event with JQuery directly.
You should try something like this:
PS: A good tutorial for understanding how it works: http://arturadib.com/hello-backbonejs/