jquery 只切换一个元素而不需要使用 ids

标签 jquery html toggle visibility

我的页面上有多个具有相同类的 div。我希望能够单独切换它们。使用此脚本:

 $(document).ready(function() {
   $('.file').hide();

   $('a.toggle').click(function() {
      $('.file').slideToggle(1000);
      $(this).text($(this).text() == 'show' ? 'hide' : 'show');
      return false;
   });
 });

HTML 看起来像这样:

<div class="file-wrapper">
 <h5>(<a href="#" class="toggle">show</a>)</h5>
  <div class="file">
   <?php require "lipsum.php"; ?>
  </div><!-- .file -->
</div><!-- .file-wrapper -->

<div class="file-wrapper">
 <h5>(<a href="#" class="toggle">show</a>)</h5>
  <div class="file">
   <?php require "lipsum.php"; ?>
  </div><!-- .file -->
</div><!-- .file-wrapper -->

现在,如果我单击任一链接,它将切换页面上的两个 div(该页面最终将有最多 10 个可切换的 div。我知道我可以只向每个 div 添加 ID,但我不想为每个 id 编写一次 jquery 脚本。

我对 jquery 相当陌生,所以我确信有一个简单的方法可以做到这一点。我尝试过使用 .closest('div') 但这也不起作用。

有什么帮助吗?

最佳答案

也许你可以尝试一下:

$(this).parent('h5').next('div.file').slideToggle(1000);

编辑:这是一个示例:http://jsfiddle.net/6GRJr/

关于jquery 只切换一个元素而不需要使用 ids,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3585521/

相关文章:

ios - iOS 中的自定义切换

javascript - JS数组切换推送和拼接

javascript - 在 javascript 中切换点击事件的最佳方法是什么?

java - Spring 3,将数据从jsp传递到 Controller

javascript - Jquery - 如何将来自输入的属性名称的文本添加到标签 attr 和该输入 ID?

html - 将很棒的字体图标嵌入到外部 css 文件中

html - 在背景图像上褪色图像

php ajax从数据库检索数据

jquery - jQuery 中背景图像的实际大小

html - 分层结构中绘制连接器的非图像解决方案