0

我正在使用 jQuery 手风琴 UI - http://jqueryui.com/demos/accordion/ ...并希望链接到页脚中的特定手风琴,以便链接将您带到特定页面并打开特定的手风琴。

在插件中,标题是链接,所以我添加了:name="contact",然后我链接到 / pagename #contact 但它不会打开手风琴,所以它变得毫无意义。

我能做些什么?谢谢

4

3 回答 3

0

我很确定您应该为<a href="#contact">您链接到的手风琴项目的内容制作标题。

您还必须像这样设置手风琴:.accordion({ navigation:true })

编辑:http: //jsfiddle.net/M5JQn/

于 2012-04-18T00:28:18.863 回答
0

来自: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);} 这将确保每次你去它时它都是打开的。

于 2012-04-18T00:30:02.080 回答
0

忘记我在下面说的话。这是除 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] });
于 2012-04-18T00:30:31.000 回答