1. ホーム
  2. jquery

.trigger()と.click()におけるjQueryの利点/相違点

2023-10-07 20:03:28

質問

性能の面では、次のような利点 (または単なる違い) があります。

$('.myEl').click();

$('.myEl').trigger('click');

全くないのですか?

どのように解決するのですか?

これは click メソッド :

jQuery.fn.click = function (data, fn) {
    if (fn == null) {
        fn = data;
        data = null;
    }

    return arguments.length > 0 ? this.on("click", null, data, fn) : this.trigger("click");
}

この関数に引数が渡されないと、クリックイベントが発生します。


使用方法 .trigger("click") を使うと、呼び出す関数が一つ減ります。

また、@Sandeepが指摘したように、彼の 回答 .trigger("click") の方が速いです。


1.9.0では datafn が移動したのは .on 機能 :

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