jQueryはセレクター内の特定のクラスを持つ要素を除外します 質問する

jQueryはセレクター内の特定のクラスを持つ要素を除外します 質問する

特定のアンカー タグに対して jQuery でクリック イベント トリガーを設定したいと考えています。

特定のクラスのリンクを無視しながら、特定のリンクを新しいタブで開きたいです (質問される前に言っておきますが、リンクは CMS から来ているので、キャッチしようとしているリンクにクラスを設定することはできません)。

クラス付きのリンクを除外したい"button"または"generic_link"

私が試してみました:

$(".content_box a[class!=button]").click(function (e) {
    e.preventDefault();     
    window.open($(this).attr('href'));
});

しかし、それはうまくいかないようです。また、ORステートメントをどのように実行すればいいのでしょうか?"generic_link"除外では?

ベストアンサー1

あなたは。ない()方法:

$(".content_box a").not(".button")

あるいは、:ない()セレクタ:

$(".content_box a:not('.button')")

.not()2つのアプローチの間には、より読みやすく(特に連鎖した場合)、:not()わずかに高速であるという点を除けば、ほとんど違いはありません。このStack Overflowの回答違いの詳細については、こちらをご覧ください。

おすすめ記事