このコードは必要に応じて機能します:
$("input[class="plus"], input[class="minus"]").mousedown(function () {
//..doing something
});
私が欲しかったのは次のようなものです:
$("input[class="plus minus"]").mousedown(function () {
//..doing something
});
または:
$("input[class="plus"][class="minus"]").mousedown(function () {
//..doing something
});
セレクタは、次のいずれかを持つ入力を選択する必要があります plus
クラスまたは minus
.
他の構文が必要ですが、構文はわかりません。
回答:
回答№1は1お勧めします:
$("input.plus, input.minus").mousedown(function () {
//..doing something
});
...入力上の他のクラスがそれらをスキップさせないようにします。属性がセレクタに等しい場合( input[class="plus"]
)、次の場合にのみ一致します のみ クラス input
は "plus"
。一致するだろう <input class="plus">
だがしかし <input class="plus foo">
。通常、要素に他のクラスを持たせる柔軟性が必要です。
あるいは、あなたは できた これを行う:
$("input").filter(".plus, .minus").mousedown(...);
...しかし、それはあまり効率的ではないでしょう:最初にjQueryをルックアップします すべて input
要素を追加し、それらのクラスを持つものだけに結果を個別にフィルターします。だから私はそれをお勧めしません。
回答№2の場合は1
正しい構文では、指摘したようにセレクターをコンマで区切っていますが、セレクターは次のように記述する必要があります。
$("input.plus, input.minus").mousedown(function () {
//..doing something
});
最終的な代替手段として使用できます .add
:
$("input.plus")
.add($("input.minus"))
// possibly add more elements here
.mouseover(...);
回答№3の場合は1
$("input.plus, input.minus").mousedown(function () {
//..doing something
});
回答№4の場合は1
私はバインディングに行きます
$onInputMouseDown = function() {
....
}
$(".plus").bind("mousedown",$onInputMouseDown);
$(".minus").bind("mousedown",$onInputMouseDown);