gpt4 book ai didi

javascript - 自定义 JQuery 事件在一个地方触发,但不在另一个地方触发

转载 作者:行者123 更新时间:2023-12-02 20:29:58 24 4
gpt4 key购买 nike

这可能只是我自己对事件如何工作的无知,但有人可以解释一下:自定义事件不会在函数顶部触发,但会在该函数内部的回调中触发。

以下工作(自定义事件触发):

function foo() {

$.ajax( ... , function() {
$.event.trigger("custom" , data );
});

}

foo();

以下内容不起作用(自定义事件不会触发):

function foo() {
$.event.trigger("custom" , data );

$.ajax( ... , function() {
...
});

}

foo();

事件绑定(bind)如下:

$(document).bind("custom custom1 custom2" , function( event, data ) {
...
});

我真的希望它在函数的顶部触发。非常感谢任何帮助!

注意:无论是否有额外的数据参数,在不同的浏览器中都会出现同样的问题。

最佳答案

它在异步回调中工作的事实让我相信当 foo(); 时被调用,实际绑定(bind)尚未发生。执行此操作时,您需要注意事情的顺序。

jwwishart 的答案可能有效,因为他首先绑定(bind)......然后调用 foo。如果您按照事情发生的顺序发布整个代码,那么调试可能会更容易。

关于javascript - 自定义 JQuery 事件在一个地方触发,但不在另一个地方触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4330427/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com