jQuery針對多個元素的相同點選事件

2021-10-02 14:31:56 字數 1906 閱讀 1494

有沒有辦法為頁面上的不同元素執行相同的**?

$('.class1').click(function() );

$('.class2').click(function() );

而是做一些像:

$('.class1').$('.class2').click(function() );
謝謝

$('.class1, .class2').on('click', some_function);
要麼:

$('.class1').add('.class2').on('click', some_function);
這也適用於現有物件:

const $class1 = $('.class1');

const $class2 = $('.class2');

$class1.add($class2).on('click', some_function);

只需將$('.myclass1, .myclass2, .myclass3')用於多個選擇器。 此外,您不需要lambda函式將現有函式繫結到click事件。

我通常使用on,而不是click。 它允許我向特定函式新增更多事件偵聽器。

$(document).on("click touchend", ".class1, .class2, .class3", function () );
希望能幫助到你!

另一種選擇,假設您的元素儲存為變數(如果您在函式體中多次訪問它們,通常是個好主意):

function disableminheight() ;
利用jquery鏈結並允許您使用引用。

我有乙個包含許多輸入欄位的物件的鏈結,這需要由同一事件處理。 所以我只需使用find()來獲取需要擁有事件的所有內部物件

var form = $('');

// ... apending several input fields

form.find('input').on('change', oninputchange);

如果你的物件是鏈結的一級,可以使用children()而不是find()方法。

我們也可以編寫如下**,我在這裡使用了模糊事件。

$("#proprice, #proqty").blur(function()

});

除了上面的優秀示例和答案,您還可以使用他們的類對兩個不同的元素進行「查詢」。 例如:

hello

world

這應輸出「helloworld」。

新增逗號分隔的類列表,如下所示:

jquery(document).ready(function($) 

});

如果您有或想要將元素儲存為變數(jquery物件),您還可以迴圈它們:

var $class1 = $('.class1');

var $class2 = $('.class2');

$([$class1,$class2]).each(function() );

});

$('.class1, .class2').click(some_function);
確保你放置乙個像$('。class1,space here.class2')的空格,否則它將無效。

可以在相同的元素上執行多條jQuery命令的方法

一般來說,我們平時都是在乙個元素上只能使用一條jquery語句.這樣的畫瀏覽器就需要多次查詢出相同的元素,那麼,有沒有一種方法可以使得在乙個元素上同時執行多條jquery命令呢?答案當然是有的,在jquery裡有一種名叫chaining的技術,是允許我們在相同的元素上執行多條jquery命令的.使用...

C 用遞迴方法取多個陣列的相同元素

取兩個陣列中相同元素可以使用乙個方法 string tmparray array1.intersect array2 toarray 取多個陣列中相同的項 首先,把所有陣列加入list 中,再把這個引數傳入下面的方法裡面即可。string resultarray null 遞迴尋找幾個陣列中共同包含...

演算法導論 7 2 針對有相同元素值的快速排序

題目詳見演算法導論7 2習題,在這裡我就不再贅述。本文分為三個部分,第一部分是寫我改進演算法的思路,第二部分是演算法實現,第三部分是程式執行結果。思路 演算法導論 裡介紹的partition沒有考慮元素相等的情況,但是就算存在相同元素快排其實也可以適用的,只是相等的元素當作大於key的元素處理了。習...