Jquery 选项卡 - 在活动时添加 class
Jquery tab - add a class when active
我正在尝试编辑这个:
http://jsfiddle.net/rohankumar1524/HznC9/3/
如您所见,代码添加了 class "current_tab" at "ul.tab_nav li a" clicked。
我需要在 "ul.tab_nav li" 添加这个 class。
我试过这个:
$(document).ready(function(){
$('.tabs').each(function(){
var tab = $(this);
tab.find('.tab_content').hide(); // Hide all divs
tab.find('ul.tab_nav li').click(function(){ //When any link is clicked
if($(this).hasClass('current_tab')) return false;
tab.find('ul.tab_nav li').removeClass('current_tab');
$(this).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').hide(); // Hide all divs
$(currentTab).slideDown(); // Show div with id equal to variable currentTab
return false;
});
});
});
但是这样"tab_content"就不会显示了。
有什么帮助吗?
在您的点击事件处理程序中 this 指的是一个 <li>
元素,但是您的 href 属性位于子 <a>
元素:
<li><a href=".tab2"class="iconTab iconTabWifi"> </a></li>
所以不要这样做:
var currentTab = tab.find($(this).attr('href'));
这样做:
var currentTab = tab.find($(this).find("a.iconTab").attr('href'));
我正在尝试编辑这个:
http://jsfiddle.net/rohankumar1524/HznC9/3/
如您所见,代码添加了 class "current_tab" at "ul.tab_nav li a" clicked。
我需要在 "ul.tab_nav li" 添加这个 class。
我试过这个:
$(document).ready(function(){
$('.tabs').each(function(){
var tab = $(this);
tab.find('.tab_content').hide(); // Hide all divs
tab.find('ul.tab_nav li').click(function(){ //When any link is clicked
if($(this).hasClass('current_tab')) return false;
tab.find('ul.tab_nav li').removeClass('current_tab');
$(this).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').hide(); // Hide all divs
$(currentTab).slideDown(); // Show div with id equal to variable currentTab
return false;
});
});
});
但是这样"tab_content"就不会显示了。
有什么帮助吗?
在您的点击事件处理程序中 this 指的是一个 <li>
元素,但是您的 href 属性位于子 <a>
元素:
<li><a href=".tab2"class="iconTab iconTabWifi"> </a></li>
所以不要这样做:
var currentTab = tab.find($(this).attr('href'));
这样做:
var currentTab = tab.find($(this).find("a.iconTab").attr('href'));