如何引用在backbone.js视图中定义的事件的事件上下文?

发布于 2024-12-14 08:06:06 字数 280 浏览 1 评论 0原文

我的视图设置了一些事件,并且我想引用,例如,被单击的按钮元素,因为它具有我需要的数据属性。我想这样做:

events: {
    'click #testGadget': 'fireEvent',
    ...
},
fireEvent:  function(){
    var x = $(this).data('iCanHaz')
}

但是“this”变量的范围仅限于视图本身。我知道有一种方法可以完成我想要做的事情,但我似乎无法以返回任何谷歌点击的方式表达我的问题。

I have my view set up with some events and I want to reference, for example, the button element that was clicked because it has a data attribute I need. I want to do it like so:

events: {
    'click #testGadget': 'fireEvent',
    ...
},
fireEvent:  function(){
    var x = $(this).data('iCanHaz')
}

But the 'this' variable is scoped to the view itself. I know there's a way to accomplish what I'm looking to do but I can't seem to word my question in a way that returns any google hits.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

七秒鱼° 2024-12-21 08:06:06

可以简单地使用 event.target 属性来完成:

fireEvent:  function(e){
    var x = $(e.target).data('iCanHaz')
}

请参阅 Event对象文档

Can simply be done with the event.target property:

fireEvent:  function(e){
    var x = $(e.target).data('iCanHaz')
}

see Event Object doc

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文