質問

私はこのような要素の束を持っています:

<div></div>
<span></span>
<table></table>
<div></div>
<span></span>
<div></div>

私はそう何をすればそこのdivの間でtable要素だ、とするか否かを確認する必要があります。

$('div').each(function () {
  if ($(this).nextUntil('div').include('table')) {
    $(this).addClass('got-a-table');
  }
}

このような何か?私はそこにはいメソッドが含まれていることを知らない、私は必要なものを私を得ることができるが何かありますか?

感謝します。

結果はこのようにする必要があります:

<div class='got-a-table'></div>
<span></span>
<table></table>
<div></div>
<span></span>
<div></div>

編集:迅速testignためjsbin: http://jsbin.com/aqoha/2/edit

役に立ちましたか?

解決

$('div').each(function () {
  if ($(this).nextUntil('div').filter('table').length > 0) {
    $(this).addClass('got-a-table');
  }
});

の代わりには、()、あなたは()フィルタが欲しいます。

他のヒント

のtry

$('div').each(function () {
   var table = $(this).next('table');
   if (table) {
       if (table.next('div')){
            // do something.
       }       
   }
});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top