我正在使用 jQuery 手风琴 UI - http://jqueryui.com/demos/accordion/ ...并希望链接到页脚中的特定手风琴,以便链接将您带到特定页面并打开特定的手风琴。
在插件中,标题是链接,所以我添加了:name="contact",然后我链接到 / pagename #contact 但它不会打开手风琴,所以它变得毫无意义。
我能做些什么?谢谢
我正在使用 jQuery 手风琴 UI - http://jqueryui.com/demos/accordion/ ...并希望链接到页脚中的特定手风琴,以便链接将您带到特定页面并打开特定的手风琴。
在插件中,标题是链接,所以我添加了:name="contact",然后我链接到 / pagename #contact 但它不会打开手风琴,所以它变得毫无意义。
我能做些什么?谢谢
我很确定您应该为<a href="#contact">
您链接到的手风琴项目的内容制作标题。
您还必须像这样设置手风琴:.accordion({ navigation:true })
编辑:http: //jsfiddle.net/M5JQn/
来自:http: //jqueryui.com/demos/accordion/#method-activate
.accordion(“激活”,索引)
以编程方式激活 Accordion 的内容部分。索引可以是零索引数字以匹配要关闭的标题的位置,也可以是与元素匹配的选择器。
传递 false 以关闭所有(仅适用于 collapsible:true)。
所以当点击页脚中的链接时:onclick"打开页面;$('accname').accordion('activate',2)"
更新:因为激活就像每次点击一样,它不会总是打开它,所以你必须先得到它的状态,使用: if($('#accordion').accordion('option', 'active')! =1) {$('#accordionp').accordion('option', 'active', 1);} 这将确保每次你去它时它都是打开的。
忘记我在下面说的话。这是除 jquery ui 之外的通用方法。正如“Joe Flateau”所提到的,有一个更好的方法,这是一个很好的例子。
文档中有这样的东西。这是你需要的吗?$( ".selector" ).accordion({ active: 2 });
您可以定义一个数组,如:
var pages=new Array();
pages['main']=1;
pages['contact']=2;
pages['help']=3;
//and whatsoever
然后您可以使用来自 url 哈希的信息打开该页面:
var hash = window.location.hash
$( ".selector" ).accordion({ active: pages[hash] });