首页 > 解决方案 > 如何选择具有特定类的元素?

问题描述

从以下查找current类,无论哪个数据属性选项卡具有类,并将类添加到下面的current类似 ID 中divtab-content

<a class="projects_select tab-link" data-tab="tab-1" href="#tab1"> tab1 </a>
<a class="projects_select tab-link current" data-tab="tab-2" href="#tab2"> tab2 </a>
<a class="projects_select tab-link" data-tab="tab-3" href="#maps"> tab3 </a>

我有以下div's上课tab-content

<div class="tab-content" id="tab-1">Tab-1 </div>
<div class="tab-content" id="tab-2">Tab-2 </div>
<div class="tab-content" id="tab-3">Tab-3 </div>

试过:

$(document).ready(function($) { 
    $('.projects_select').find('current').attr(data-tab);
    $('.tab-content').addClass('current');
});

标签: javascriptjqueryhtmlcustom-data-attribute

解决方案


基本答案只是一个组合类选择器,您需要将它分配给一个变量:

var myId = $('.projects_select.current').attr(data-tab);

然后,使用它选择一个伴随元素:

$('#' + myId).addClass('current');

但是,我建议简化使用顺序(索引):

var myIndex = $('.projects_select.current').index();

然后...

$('.tab-content').eq(myIndex).addClass('current');

这消除了对 ID 和数据属性的要求。如果.tab-content页面上有更多的实例,请从包含两组元素的元素中包含一个类:

$('.parent-element .tab-content').eq(myIndex).addClass('current');

https://api.jquery.com/eq/


推荐阅读