Javascript Jquery获取选项卡以在活动时添加类
所有这些都有效,除了试图让它在单击“ul.tab\u nav li a”时将类“current\u tab”应用于“ul.tab\u nav li” JQueryJavascript Jquery获取选项卡以在活动时添加类,javascript,jquery,Javascript,Jquery,所有这些都有效,除了试图让它在单击“ul.tab\u nav li a”时将类“current\u tab”应用于“ul.tab\u nav li” JQuery $(document).ready(function(){ $('.tabs').each(function(){ var tab = $(this); tab.find('.tab_content').hide(); // Hide all divs tab.find('ul.tab_nav li a').
$(document).ready(function(){
$('.tabs').each(function(){
var tab = $(this);
tab.find('.tab_content').hide(); // Hide all divs
tab.find('ul.tab_nav li a').click(function(){ //When any link is clicked
tab.find('ul.tab_nav li a').removeClass('current_tab'); // Remove active class from all links
tab.addClass('current_tab'); //Set clicked link class to active
var currentTab = tab.find($(this).attr('href')); // Set variable currentTab to value of href attribute of clicked link
tab.find('.tab_content').slideUp(); // Hide all divs
$(currentTab).slideDown(); // Show div with id equal to variable currentTab
return false;
});
});
});
和html
<div class="box tabs siteBackgroundColor">
<div class="box_header">
<ul class="tab_nav">
<li class="dummyTab"><a href=".tab1" class="iconTab"> </a></li>
<li><a href=".tab2" class="iconTab iconTabWifi"> </a></li>
<li><a href=".tab3" class="iconTab iconTabWeb"> </a></li>
<li><a href=".tab2" class="iconTab iconTabHours"> </a></li>
<li><a href=".tab4" class="iconTab iconTabMap"> </a></li>
<li><a href=".tab3" class="iconTab iconTabPhone"> </a></li>
<li><a href=".tab4" class="iconTab iconTabShare"> </a></li>
</ul>
</div>
<div class="box_content tab_content tab1 dummyTab"></div>
<div class="box_content tab_content tab2">
<p><span class="textBold">HRS:</span> Mon-Fri 7am to 3pm, Saturday 8am to 3pm <span class="textBold">KITCHEN CLOSES</span> at 2:30pm</p>
</div>
<div class="box_content tab_content tab3">3<br />
3<br />
3<br />
3</div>
<div class="box_content tab_content tab4">4<br />
4<br />
4<br />
4<br />
4</div>
</div>
小时:周一至周五上午7点至下午3点,周六上午8点至下午3点厨房下午2:30关门
3
3
3
3.
4
4
4
4
4.
除此之外,它正在按我需要的方式工作。试试这个
tab.find('ul.tab_nav li').removeClass('current_tab');
$(this).closest('li').addClass('current_tab'); //Set clicked link li to active
要仅将链接设置为活动
链接,请尝试
tab.find('ul.tab_nav li a').removeClass('current_tab');
$(this).addClass('current_tab'); //Set clicked link class to active
代替
tab.addClass('current_tab'); //Set clicked link class to active
已更新您应该使用hide()
代替slideup()
,它将不会设置关闭div
的动画,并检查活动选项卡
如果它是您的当前选项卡
,然后使用return false
进行该锚定单击
试试这个
tab.find('ul.tab_nav li').removeClass('current_tab');
$(this).closest('li').addClass('current_tab'); //Set clicked link li to active
要仅将链接设置为活动
链接,请尝试
tab.find('ul.tab_nav li a').removeClass('current_tab');
$(this).addClass('current_tab'); //Set clicked link class to active
代替
tab.addClass('current_tab'); //Set clicked link class to active
已更新您应该使用hide()
代替slideup()
,它将不会设置关闭div
的动画,并检查活动选项卡
如果它是您的当前选项卡
,然后使用return false
进行该锚定单击
尝试替换以下代码
tab.find('ul.tab_nav li a').removeClass('current_tab'); // Remove active class from all links
tab.addClass('current_tab'); //Set clicked link class to active
与
拨弄
尝试替换以下代码
tab.find('ul.tab_nav li a').removeClass('current_tab'); // Remove active class from all links
tab.addClass('current_tab'); //Set clicked link class to active
与
拨弄
我在您的代码中进行编辑,因为您可以轻松学习:
$(document).ready(function(){
$('.tabs').each(function(){
var tab = $(this);
tab.find('.tab_content').hide(); // Hide all divs
tab.find('.tab_nav li a').click(function(){ //When any link is clicked
tab.find('.tab_nav li').removeClass('current_tab'); // Remove active class from all links
tab.addClass('current_tab'); //Set clicked link class to active
var currentTab = tab.find($(this).attr('href')); // Set variable currentTab to value of href attribute of clicked link
tab.find('.tab_content').slideUp(); // Hide all divs
$(".currentTab").slideDown(); // Show div with id equal to variable currentTab
return false;
});
});
});
我在您的代码中进行编辑,您可以轻松学习:
$(document).ready(function(){
$('.tabs').each(function(){
var tab = $(this);
tab.find('.tab_content').hide(); // Hide all divs
tab.find('.tab_nav li a').click(function(){ //When any link is clicked
tab.find('.tab_nav li').removeClass('current_tab'); // Remove active class from all links
tab.addClass('current_tab'); //Set clicked link class to active
var currentTab = tab.find($(this).attr('href')); // Set variable currentTab to value of href attribute of clicked link
tab.find('.tab_content').slideUp(); // Hide all divs
$(".currentTab").slideDown(); // Show div with id equal to variable currentTab
return false;
});
});
});
使用此tab.find('ul.tab_nav li').removeClass('current_tab');在tab.find('ul.tab_nav li a').removeClass('current_tab')的位置;如何在我的问题中使用您的代码:使用此选项卡.find('ul.tab_nav li').removeClass('current_tab');在tab.find('ul.tab_nav li a').removeClass('current_tab')的位置;我如何使用你的代码来解决我的问题:我还有几个问题,刚刚有人告诉我页面上会有多个选项卡框。第一个问题:当单击另一个选项卡框中的选项卡时,是否有方法使打开的选项卡自动关闭?第二个问题:单击“打开的选项卡”锚定时,它会跳上跳下,有没有办法在单击“当前选项卡”锚定时将其关闭?谢谢你到目前为止的帮助,希望你能帮我解决剩下的问题。谢谢@RohanHow我可以在这里对我的代码做同样的操作:我还有几个问题,刚刚有人告诉我页面上将有多个选项卡框。第一个问题:当单击另一个选项卡框中的选项卡时,是否有方法使打开的选项卡自动关闭?第二个问题:单击“打开的选项卡”锚定时,它会跳上跳下,有没有办法在单击“当前选项卡”锚定时将其关闭?谢谢你到目前为止的帮助,希望你能帮我解决剩下的问题。谢谢@RohanHow我可以在这里对我的代码执行同样的操作: