我正在建造一个用于导航的手风琴。手风琴的每个部分都有一组链接。触发代码如下所示:
$(document).ready(function() {
$(".selector").accordion({
collapsible: true,
active: false,
navigation: true
});
});
这一切都工作得很好,直到每组中的一个链接被编辑为指向一个文件,称之为 foo.html。因此,现在如果您导航到 foo.html,location.href 会匹配折叠面板的每个部分(因为每个部分都有指向它的链接),并且会打开所有部分,从而违背了折叠面板的目的。
所以我很确定我需要使用navigationFilter
选项,但我已经用谷歌搜索了它,但没有找到任何如何构建与其相关的函数的示例。
帮助我,堆栈溢出!
这是一个老问题,但我今天也遇到了同样的问题,所以我想我会为其他正在寻找的人回答这个问题。
我想使用手风琴导航过滤器根据路线中的最后一项进行匹配(使用 ASP.NET-MVC2)。我想出了以下解决方案。它不漂亮,但很有效。
我的链接看起来像:http://site.com/Home/Details/IDSTRING http://site.com/Home/Details/IDSTRING
该过滤器匹配任何以 IDSTRING 结尾的 location.href。
您可能希望将位置解析代码移动到另一个位置,以便它只在每个页面加载时运行一次,而不是每个折叠元素运行一次。
$("#accordion").accordion({ animated: false, autoHeight: false, collapsible: true, navigation: true, navigationFilter: function () {
//Accordion NavigationFilter
var locationHrefArray = location.href.split("/");
var locationLastString = locationHrefArray[locationHrefArray.length - 1].toLowerCase();
var sidebarHrefArray = this.href.split("/");
var sideBarLastString = sidebarHrefArray[sidebarHrefArray.length - 1].toLowerCase();
return locationLastString == sideBarLastString;
} });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)