首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单击时激活所有数据id和#

单击时激活所有数据id和#
EN

Stack Overflow用户
提问于 2018-01-06 09:42:14
回答 1查看 474关注 0票数 0

问题是当我在div =mark-中单击"c-1“btn时,相同的id将在同一时间内活动,但是div=第二标记中的另一个也是"c-1”的按钮不会一起活动,如何使“它一起活动?”

代码语言:javascript
复制
$('.c-1').click(function() {
  var tab = $(this).attr('data-id');

  $('.c-1').removeClass('active');
  $(".c-1-details").removeClass('active');

  $(this).addClass('active');
  $("[id='" + tab + "']").addClass('active');
});
代码语言:javascript
复制
.c-1-details {
  display: none;
}

.c-1-details.active {
  display: block;
}

.active {
  color: green;
  font-weight: bold;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="mark-container">
  <button class="c-1 active" data-id="tab-1">
    			<p>for 1 btn</p> 
    		</button>

  <button class="c-1" data-id="tab-2">
    			<p>for 2 btn</p>
    		</button>

  <div class="c-1-details active" id="tab-1">
    <p>for 1 details</p>
  </div>

  <div class="c-1-details" id="tab-2">
    <p>for 2 details</p>
  </div>
</div>

<div class="second-mark">
  <ul>
    <button class="c-1 active" data-id="tab-1">current btn 1</button>

    <button class="c-1" data-id="tab-2">current btn2</button>
  </ul>

  <div class="c-1-details active" id="tab-1">
    display content 1
  </div>

  <div class="c-1-details" id="tab-2">
    display content 2
  </div>
</div>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-06 10:00:49

正如注释中提到的,id应该是元素的唯一元素。公共元素总是可以用相同的class表示。以下代码是不言自明的.

代码语言:javascript
复制
$('.c-1').click(function() {
            var tab = $(this).attr('data-id');
            $('.c-1,.c-1-details').removeClass('active');
            $('.' + tab + ', .details-' + tab).addClass('active');
        });
代码语言:javascript
复制
.c-1-details {
        display: none;
    }

    .c-1-details.active {
        display: block;
    }

    .active {
        color: green;
        font-weight: bold;
    }
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>    


      <div class="mark-container">
        <button class="c-1 tab-1 active" data-id="tab-1">
            <p>for 1 btn</p> 
        </button>

        <button class="c-1 tab-2" data-id="tab-2">
            <p>for 2 btn</p>
        </button>

        <div class="c-1-details details-tab-1 active" data-id="tab-1">
            <p>for 1 details</p>
        </div>

        <div class="c-1-details details-tab-2" data-id="tab-2">
            <p>for 2 details</p>
        </div>
    </div>

    <div class="second-mark">
        <ul>
            <button class="c-1 tab-1 active" data-id="tab-1">current btn 1</button>

            <button class="c-1 tab-2" data-id="tab-2">current btn2</button>
        </ul>

        <div class="c-1-details details-tab-1 active" data-id="tab-1">
            display content 1
        </div>

        <div class="c-1-details details-tab-2 " data-id="tab-2">
            display content 2
        </div>
    </div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48126086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档