jquery 有没有方法可以多次使用关键字(this)

p4tfgftt  于 2023-04-05  发布在  jQuery
关注(0)|答案(1)|浏览(94)

查询:

$(document).ready(function() {
   $(".title", this).click(function(){
      $(".content", this).slideToggle();
   });
});

代码似乎很好,但它不工作.请帮助.谢谢

fdbelqdn

fdbelqdn1#

提供HTML说明了问题:您的content DIV不是title的子对象,因此$(".content", this)返回并清空jQuery对象。如果您不想重新排列HTML,我建议使用siblings()函数:https://api.jquery.com/siblings/#siblings-selector

$(document).ready(function() {
  $(".title", this).click(function() {
    console.log(this.tagName+" "+this.innerHTML);
    $(this).siblings(".content").slideToggle();
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
  <div class="title">im a title</div>
  <div class="content">this is a text</div>
</div>
<div class="container">
  <div class="title">im another title</div>
  <div class="content">and another text</div>
</div>

相关问题