javascript - 切换在页面上出现两次的元素

标签 javascript jquery html

我正在使用一个在页面上出现两次的 html 组件。

我遇到的问题是,当我单击一个组件来切换其内容(如 Accordion )时,两个组件都会同时切换。

如何重写 JS 以在单独单击组件时切换每个组件,而不需要为组件提供不同的类并重写 js 两次?

这就是我到目前为止所拥有的;

var bindEventsToUI = function () {        
        $(".details").click(function(e){
            $(".content").slideToggle("slow", function() {
                $(e.target).hide().siblings().show();
            });
        });
    };

最佳答案

试试这个:

$(".details").click(function(e) {
  $(this).children(".content").slideToggle("slow");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='details'>Testing 123
  <div class='content'>> Content 123</div>
</div>
<div class='details'>Testing 456
  <div class='content'>> Content 456</div>
</div>

关于javascript - 切换在页面上出现两次的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47761976/

相关文章:

javascript - 模态框打开有奇怪的效果

javascript - AngularJS + UI-Router - 在没有 HashBang 的情况下在 HTML5 模式下手动输入 URL

javascript - 简单的股票代码 (jQuery)

javascript - 切换到移动 View 后,我的导航栏消失了

javascript - 如何重置jquery.on()?

javascript - 匹配父子表格单元格的行高

jquery - 使用 css 创建多个模板

php - 如果没有从下拉列表中选择值,允许文本框使用 php、mysql、javascript 添加到 mysql 表

php - 使用ajax和php选择行表

javascript - 从左到右依次滚动列表标签内容