1

「thead」をクリックして「arrow_o」を非表示にしようとしていますが、機能しません。jquerysの「子」はテーブルで機能しませんか?

html

<thead class="thead">
  <tr>
    <th>
      <div class="arrow_o"></div>
    </th>
  </tr>
</thead>

js

$(document).ready(function() {
  $('.thead').click(function() {
    $(this).children('.arrow_o').hide();
  });
});
4

3 に答える 3

5

.children()メソッドは.find()とは異なり、.children()はDOMツリーを1レベル下に移動するだけですが、.find()は複数のレベルを下に移動して、子孫要素(孫など)も選択できます。

したがって、この:

$(document).ready(function() {
  $('.thead').click(function() {
    $(this).find('.arrow_o').hide();
  });
});
于 2012-11-26T20:49:41.763 に答える
2

$('.arrow_o', this).hide();基本的に、arrow_oが配置されるべきコンテキストを設定するものを試してください。

完全なコード:

$(document).ready(function() {
  $('.thead').click(function() {
     $('.arrow_o', this).hide();
  });
});
于 2012-11-26T20:49:38.307 に答える
2

.children()メソッドは.find()とは異なり、.children()はDOMツリーを1レベル下に移動するだけですが、.find()は複数のレベルを下に移動して、子孫要素(孫など)も選択できます。

jQueryの子

代わりに.find()を使用してください。

于 2012-11-26T20:49:48.840 に答える