jquery绑定停止传播回调上下文

发布于 2024-12-06 02:30:51 字数 481 浏览 1 评论 0原文

我试图防止多个事件触发。

我正在使用回调函数来传递对象,如下所示:

function init() {

    var myObj = this.someObject;

    $('#id').bind("blur keyup change", function (e, obj) {
        return function () {
            SomeFunction(e, obj);
        }
    } (this, myObj));

}

function SomeFunction(e, obj) {
    e.stopPropagation();
    //do something with the object
}

错误是它找不到函数 stopPropagation。

这是因为我在调用函数中将“this”分配给 e。

如何访问 SomeFunction 中的“事件”?

I am trying to prevent multiple events firing.

I'm using a callback function to pass an object, like this:

function init() {

    var myObj = this.someObject;

    $('#id').bind("blur keyup change", function (e, obj) {
        return function () {
            SomeFunction(e, obj);
        }
    } (this, myObj));

}

function SomeFunction(e, obj) {
    e.stopPropagation();
    //do something with the object
}

The error is that it can't find the function stopPropagation.

This is because I am assigning 'this' to e in the calling function.

How can I get access to the 'event' in SomeFunction?

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

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

发布评论

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

评论(1

戏舞 2024-12-13 02:30:51

我想你会想做这样的事情: http://jsfiddle.net/W47Ky/

I think you'll want to do something like this: http://jsfiddle.net/W47Ky/

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