7

要素オブジェクトをテストして、「classA」または「classB」のいずれかがあるかどうかを確認したいと思います。たとえば、click() イベントは、イベントのtargetプロパティの要素を返しました。この要素をテストして、これら 2 つのクラスのいずれかがあるかどうかを確認します。

$("#mybutton").click(function($event) {
  var $el = $($event.target);
  if($el.is(".classA") || $el.is(".classB")) {
    // Can I do the above with 1 selector instead of two separate ones?
  }
});

上記のように、is()関数を使用して、各クラスを個別に確認できますが、2 回ではなく 1 回の関数呼び出しで実行できるかどうかが気になります。

4

3 に答える 3

12

はい、カンマでセレクターを区切ることができます:

if($el.is(".classA, .classB"))

実際に見てください

于 2012-09-03T11:03:05.407 に答える
1

かどうかをテストできます

if($el.is('.classA, .classB')) { ... }

ここに小さなテストケースがあります: http://jsfiddle.net/ydtv2/

于 2012-09-03T11:06:17.473 に答える
0

いいえ、jquery には or 条件はありません。同じステートメントでセレクターを使用する必要があり$el.is(".classA, .classB")、これを or 条件として扱うことができます

于 2012-09-03T11:10:47.937 に答える