ほぼ分かっていると思いますが、まだ十分ではありません...
DOM の 1 レベル上と 2 レベル下の要素に特定の文字列が含まれている場合にのみ、この HTML から a.rate-button を選択したいと考えています。これがjQueryセレクターの限界を広げていることは知っていますが、それは単なる楽しみであり、本番用ではありません.
HTML:
<div class="comment">
<div class="submitted">
<a href="#" title="View user profile.">Blow, Jo</a>
</div><!-- CLASS submitted -->
<div class="content">
<p>blah</p>
<p>blah</p>
<p>blah</p>
</div><!-- CLASS content -->
<ul class="links">
<li class="comment_delete first"><a href="/comment/delete/1204">delete</a></li>
<li class="comment_edit"><a href="/comment/edit/1204">edit</a></li>
<li class="flag_content_add">hippo</li>
<li class="rate_thumbup_comments last">
<span>
<div class="rate-widget-1 rate-widget clear-block rate-average">
<a class="rate-button" rel="nofollow" href="#">up</a>
<div class="rate-info">1 person likes this.</div>
</div>
</span>
</li>
</ul>
</div>
これまでに取得したjQueryセレクター:
$('.submitted a:contains("Blow")').parent().parent().next('.links .rate_thumbup_comments .rate-widget').find('a').css('display', 'none');
繰り返しますが、コンテナ div.submitted に「Blow」の文字列が含まれている場合にのみ、li.rate_thumbup_comments 内にある div.rate-widget 内のタグを選択したいと思います。これらはすべてコンテナ div.comment 内にあります