【发布时间】:2012-05-12 20:22:11
【问题描述】:
更新:
尝试使用正则表达式作为 url 并且它有效:
var url = window.location.pathname,
urlRegExp = new RegExp(url.replace(/\/$/,'') + "$");
$("#accordion a").each(function()
{
if(urlRegExp.test(this.href.replace(/\/$/,'')))
{
$(this).addClass("active-sidebar-link");
}
});
我正在使用 jQuery UI Accordion Widget 为我的网站构建侧边栏导航菜单。 http://jqueryui.com/demos/accordion/
我有以下代码:
// create accordion
$( "#accordion" ).accordion(
{
header: '> li, h3:not(> li > ul)',
collapsible: true,
autoHeight: false,
navigation:true
});
// Add active class to active sidebar links
$("#accordion a").each(function()
{
if (this.href == window.location || this.href == document.location.protocol + "//" + window.location.hostname + window.location.pathname)
{
$(this).addClass("active-sidebar-link");
}
});
手风琴有效,“navigation: true”选项也有效(http://jqueryui.com/demos/accordion/#option-navigation),它会根据您的链接打开相应的手风琴“抽屉”来访。
但是活动类没有被添加到当前链接。
有什么想法吗?
【问题讨论】:
-
我认为您可能需要一个正则表达式。 href="website.com" 和 href="website.com" 有什么区别?
-
尝试使用正则表达式仍然无法正常工作。将正则表达式代码添加到问题中。
标签: jquery accordion jquery-ui-accordion