gpt4 book ai didi

jquery - .on ('click' ) VS 'selector.click

转载 作者:行者123 更新时间:2023-12-01 04:10:44 28 4
gpt4 key购买 nike

也许我失去了理智,或者也许我错过了备忘录。我总是使用$(selector).click对于任何和所有点击事件,除非我与事后添加到 DOM 的元素进行交互。在这种情况下,我使用了类似 $(closest permanent parent).on('click',selector 的东西.

我看到这里有很多人只使用 . on()对于一切。我错过了 .on() 的好处吗?或者其他的东西?对我来说这似乎是不正确的。我已阅读文档,但没有理由使用 .on().click() .

与静态 DOM 元素交互时是否严格偏好?

编辑

显然我不清楚。我了解 .on() 的用途用于动态生成的元素。我的问题是Why use it for static elements

最佳答案

.click() 定义*为:

jQuery.fn.click = function( data, fn ) {
return arguments.length > 0 ?
this.on( 'click', null, data, fn ) :
this.trigger( 'click' );

click 只是 on 函数的一部分,因此就性能而言,.on() 稍快一些。也就是说,差异可以忽略不计,这并不是我更喜欢 on 而不是 click 的真正原因。

我坚持使用 on 而不是 click 的真正原因是为了可维护性。通常我会通过绑定(bind) .on('click', ...) 方法来启动插件,然后将其更改为 .on('widgetaction', ...) 事件由点击触发,但也可以由按键或任何其他相关事件触发。

坚持使用 .on() 函数还意味着我可以轻松返回并从 .on('click', ...) 更改为 .on('click', 选择器, ...) 无需付出太多努力。

总的来说,这取决于一致性,我发现 .on() 使用起来比 .click() 更一致。

* 我修改了 source code稍微具体引用一下点击事件,原始未修改版本请引用 jQuery v1.10.2 第 7554-7564 行。

关于jquery - .on ('click' ) VS 'selector.click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20749931/

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