javascript - 针对个别类(class)功能而不是整个类(class)群体

标签 javascript jquery

我有一个脚本,单击时会显示更多信息,再次单击时会隐藏信息。问题是,当单击时,它会显示和隐藏具有相同类名的所有 div 的信息,而不仅仅是被单击的 div。我环顾四周,我认为我需要在其中的某处添加“this”,以便它只影响单击的对象。有人可以解释我做错了什么以及如何实现这种效果吗?

Javascript

 <script type="text/javascript"> 
   this$(document).ready(function(){
   $(".toggle").click(function(){
      $(".hiddenDiv").slideToggle("slow");
        });
   });
  </script>

HTML

       <span class="toggle" onClick='return false'>
            <h4 class='arrow'>Group Health Insurance</h4>
        </span>

        <div class='hiddenDiv'>
            <p><img src="../images/group.jpg" border="0" alt="Group Insurance" align="left" hspace="5" />Group health insurance coverage is a policy that is purchased by an employer and is offered to eligible employees of the company blah blah blah</p>
        </div>
        <hr />
        <span class="toggle" onClick='return false'>
            <h4 class='arrow'>Insurance</h4>
        </span>

        <div class='hiddenDiv'>
            <p><img src="../images/group.jpg" border="0" alt="Group Insurance" align="left" hspace="5" />More info about other types of insurance blah blah blah</p>
        </div>
        <hr />

提前感谢您的帮助!

最佳答案

看起来您正在尝试使用 hiddenDiv 类切换下一个同级的样式。

您可以使用 .next 获取与选择器匹配的元素的下一个同级元素:

$myEl.next('.hiddenDiv');

由于您正在查找被单击按钮的下一个同级按钮,因此您可以在单击处理程序中使用 this 来获取该按钮。

$(document).ready(function(){
    $(".toggle").click(function(){
        $(this).next(".hiddenDiv").slideToggle("slow");
    });
});

关于javascript - 针对个别类(class)功能而不是整个类(class)群体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11960217/

相关文章:

javascript - 我需要帮助来禁用 Shadowbox 调整大小

javascript - 检测是否在 Android WebView 中单击了特定按钮

javascript - 将对象序列化为 JSON 而不向原型(prototype)添加任何内容

jquery - 使用 jQuery 检查另一个域上的 URL 是否为 404?

复合 html 控件上的 jQuery 非侵入式验证

javascript - jquery 验证插件没有提交按钮

javascript - jquery-3-3-1 中已弃用的 .live() 语句的正确替代是什么

javascript - 无法在 Angular 中为超链接创建自定义单击指令

javascript - 调用 onClick 方法之前的 ASP 警报文本

jquery - 覆盖一个 jquery 可拖动的 div