gpt4 book ai didi

javascript - 在 jQuery 中简洁地添加自定义事件触发器

转载 作者:行者123 更新时间:2023-11-29 10:49:30 26 4
gpt4 key购买 nike

我有一个相当大且复杂的 JavaScript 模块,用于我网站的多个页面。经过一番搜索和摆弄后,我想出了以下结构,当模块的一个功能在特定页面上运行时运行一些额外的代码。

// within module definition that is used across multiple pages
function some_module_method(){
$.event.trigger( 'custom_event' );
}

// bit of functionality that I'm trying to add to a single page
$( '#some-element' ).on( 'custom_event', function(){
console.log( 'The custom event has just been triggered!' );
} );

我遇到的一个问题是,当我期望此事件只触发一次时,它会快速连续触发 2-4 次。这是我用来触发和附加此事件的上述结构的问题,还是其他问题?

此外,如何在不引用某个 DOM 对象的情况下将函数附加到事件?简单地使用 $.on() 是行不通的。

最佳答案

对于您的第一期,如果没有看到示例,很难说。我可能会弄错,但我很确定 $.trigger() 不会像您使用的那样工作。它必须附加到 jQuery 对象,例如 $().trigger()

关于你的第二个问题......你不必完全使用 DOM 元素,但你可以使用空的 jquery 对象,如 $({}).on()。参见 this fiddle .

希望这对一些人有所帮助。

附带说明一下,您可能会混淆 jQuery 对象方法和核心方法。 here是一些以防万一的信息。

关于javascript - 在 jQuery 中简洁地添加自定义事件触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13216739/

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