回答:
$('.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);
.add()
はjqueryオブジェクトでも動作します
$('.class1, .class2')
と$('.class1').add('.class2')
?どのような場合に使用する必要があります.add()
か?
通常はのon
代わりに使用しますclick
。特定の関数にイベントリスナーを追加できます。
$(document).on("click touchend", ".class1, .class2, .class3", function () {
//do stuff
});
それが役に立てば幸い!
$('.myclass1, .myclass2, .myclass3')
複数のセレクターに使用するだけです。また、既存の関数をクリックイベントにバインドするためにラムダ関数は必要ありません。
もう1つの方法として、要素が変数として格納されていると想定します(関数本体で要素に複数回アクセスする場合は、多くの場合これが適切です)。
function disableMinHeight() {
var $html = $("html");
var $body = $("body");
var $slideout = $("#slideout");
$html.add($body).add($slideout).css("min-height", 0);
};
jQueryチェーンを利用して、参照を使用できるようにします。
同じイベントで処理する必要がある多くの入力フィールドを含むオブジェクトへのリンクがあります。そのため、find()を使用して、イベントを持つ必要のあるすべての内部オブジェクトを取得します
var form = $('<form></form>');
// ... apending several input fields
form.find('input').on('change', onInputChange);
オブジェクトがリンクの1つ下のレベルである場合は、children()の代わりにfind()メソッドを使用できます。