2011-02-17 38 views
0

下面的功能显示/隐藏div到选项卡,以便您可以在不同的div之间选项卡。此外,它使用本阿曼的烧烤插件http://benalman.com/projects/jquery-bbq-plugin/,它允许您在div之间切换时使用浏览器上的后退按钮。选定的类不工作jquery功能

一切正常,但我无法获得点击标签的链接显示为'选中'。当你点击一个标签时,它应该为一个链接添加一个“选定”类,使其显示为选中状态。

$(function() { 
var tabContainers = $('div.tabs > div'); 
    tabContainers.hide().filter(':first').show(); 

    $(window).bind('hashchange', function() { 
    var hash = window.location.hash || '#divContainer'; 

    tabContainers.hide(); 
    tabContainers.filter(hash).show(); 
    $('div.tabs ul.tabNavigation a').removeClass('selected'); 
    $('a[hash=' + hash + ']').addClass('selected'); 
    }); 

    $(window).trigger("hashchange"); 
}); 
+1

而不是`$('a [hash ='`你不是指`$('a [href ='`? – mVChr 2011-02-17 21:12:57

回答

1

首先保存锚的VAR在功能开始
var currenct_anchor = $(this);

然后

$('div.tabs ul.tabNavigation a').removeClass('selected'); 
currenct_anchor.addClass('selected'); 
0

有没有使用

tabContainers.filter任何原因(散列).addClass( '选择');

它看起来像你使用这种形式几次像.show() - 这些命令的工作?

最终它看起来像你的问题是,你没有正确选择你想选择的元素。我建议加入一些console.log(散列)以更好地理解变量存储的内容。确保你正在访问你想要的对象。