javascript - 当有多个具有相同类的 div 时,将 javaScript 函数应用于 1 个 div

标签 javascript php jquery

我正在尝试制定一个简单的时间表来通知用户。当他们点击日期时,应该有某种“ Accordion ”系统下拉并提供更多信息。当他们再次点击它时,“ Accordion ”再次关闭。

我添加了一些图片以使其更加清晰:

还有:

第一张图片显示了用户进入页面时所看到的内容,第二张图片显示了用户单击其中一个元素时所看到的内容。

目前的问题是当他点击1天时,所有信息都会显示。我不知道如何获得某种索引,因此只有那一天才显示其隐藏信息。

目前我有以下代码:

JavaScript

        $counter=1;
        $(document).ready(function(){
          $(".tijdlineElement").click(function(){

            $(".tijdlineElementHidden").slideToggle("slow");

            if($counter == 1){
            getElementsByClassName("tijdlineElementHidden").style.display = "block";
            $counter = 2
            }
            else{
         getElementByClass("tijdlineElementHidden").style.display = "none";

            $counter =1
            }
          });
        });

以及制作 1 天的 PHP:

    echo "<div class='tijdlineElement'>";
echo "<div class='tijdlineP2Element' >" . $topic['Uur']."<br /><br />" . $topic['Beschrijving'] . "</div>";

echo "<div class='tijdlinePElement'>". $newDate . '<br />'. $newDate1 . ' '. $newDate1a . '<br />' . $newDate2 ."</div>";
echo "<img src='images/meerFase1.png'/>";


echo "</div>";
echo "<div class='tijdlineElementHidden' style='display:none;'>";
echo "<div class='tijdlineP2Element'>" . $topic['LangeBeschrijving'] . "</div>";
echo "<div class='tijdlinePElement'></div>";
echo "</div><br />";

问题是,当用户点击 1 个日期时,其他日期的所有信息也会显示出来。

所以我的问题是:我怎样才能访问该特定的div,以便只显示所选(单击的div)div中的信息?

最佳答案

通过使用您当前的代码 $(".tijdlineElement").click(function(){ } 您正在触发该类的所有元素上的点击事件。您可以做的是使用类似 .each()$(this) 将其范围限制为当前单击的元素。

$(".tijdlineElement").each(function(){
   $(this).on({
       click:function()
       {
           $(this).slideToggle("slow");
           // other click function stuff
       }
   });
});

快速演示:

http://jsfiddle.net/9v2D5/

更新的演示:

http://jsfiddle.net/9v2D5/25/

关于javascript - 当有多个具有相同类的 div 时,将 javaScript 函数应用于 1 个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23935558/

相关文章:

javascript - 如何使用带有 useFieldArray 的 react-hook-form 对动态表单进行 yup 验证

javascript - 具有数据属性的多个下拉菜单切换

jquery - 在 jquery ajax 中返回 xml

javascript - Coffeescript ajax 成功调用外部函数

jquery - 为什么有些 jQuery 方法是驼峰命名法,而另一些则不是?

javascript - jQuery:获取元素的 "raw"内容

javascript - 如何触发 Handlebars 中的点击事件?

php - 哪个更好 : Dependency Injection+Registry or Dependency Injection or Global Registry?

php - 仅显示部分文件缩略图

php - PHP7支持多态吗?