3

特定の div でラップされていないすべての img 要素を選択する JQuery セレクターを探しています (class .special または .dontSelect を使用)

たとえば、私のhtmlコード:

<div class="special">
    <ul>
        <li>
             <img id="1"></img>
        </li>
    </ul>
</div>
<div>
    ....
          <img id="2"></img>
    ....
          <div class="dontSelect">
              <img id="3"></img>
          </div>
</div>

この例では、1 と 3 が「ラップ」されているため、ID 2 の img のみを選択する必要があります。

手伝ってくれてありがとう

4

3 に答える 3

4

そのためのセレクターはありませんが、すべての画像を選択してフィルター処理できます。

$("img").filter( function(){
    return !$(this).closest(".special,.dontSelect").length
}).remove();

//Will remove the image with id="2"
于 2012-08-12T18:32:52.430 に答える
1

filter次の方法を使用できます。

var $imgs = $('img').filter(function(){
               return $(this).closest('.dontSelect, .special').length === 0
           })
于 2012-08-12T18:32:31.717 に答える
0

試す:

 $('*:not(.dontSelect), *:not(.special)').find('img')

あるいは

 $('*:not(.dontSelect, .special) img')
于 2012-08-12T18:37:00.667 に答える