【发布时间】:2011-12-26 14:46:25
【问题描述】:
我遇到了与此处提出的问题 (Link to open jQuery Accordion?) 几乎相同的问题,但无法正确实施答案。
我尝试了这个解决方案,但它对我不起作用:
$("#accordion").accordion("activate", <?php echo $_GET['id']; ?>);
我有一个带有以下代码的 Jquery 手风琴:
<script type="text/javascript">
$(function(){
// Accordion
$("#accordion").accordion({
header: "h3",
autoHeight: false,
navigation: true,
collapsible: true,
active: false
});
$(".exlnk").click(function(event){
window.location.hash=this.hash;
});
});
</script>
<script type="text/javascript">
function Click1(){
$("#accordion").accordion('activate' , 0)
}
function Click2(){
$("#accordion").accordion('activate' , 1)
}
</script>
简化的 HTML:
<h3><a class="exlnk" href="#about" title="About">About</a></h3>
<div>content blah blah</div>
<h3><a class="exlnk" href="#about" title="About">About</a></h3>
<div>Blah blah</div>
上面的代码允许我在主页上有链接来激活指定的面板。
exlnk 位在单击每个面板时为每个面板提供一个哈希值,我在本教程 (http://www.michaeljacobdavis.com/tutorials/statesavingaccordion.html) 中阅读过它会创建可保存状态、可添加书签的面板。它分配哈希,但它不会激活面板或保存它们在重新加载时关闭。
我想要的是能够从外部链接到http://www.mysite.com/page#anchor,并让它在相应面板打开的情况下打开页面。我能够从手风琴页面链接的解决方法非常有用!
非常感谢您提供的任何帮助...我已阅读此站点上与手风琴脚本相关的所有问答,但无法回答任何问题。我对 Jquery/Javascript 非常陌生,所以解释所有实施步骤以及放置每个建议代码的位置的答案会很棒。
【问题讨论】:
-
看看
$("#accordion").accordion("activate", <?php echo $_GET['id']; ?>);生成的JS片段会很有用 -
也许这就是我所缺少的——在我尝试使用该 sn-p 时,它只是放在我的手风琴代码中,没有以任何其他方式引用或调用。
-
嘿,我刚刚在这里为你做了一个快速的手风琴:link 我想这是根据你的需要。
-
感谢您的示例。这就是我目前的运作方式——我希望发生的情况是,使用您的示例,如果我输入weblopper.com.au/accordian/index.html#second,页面将在第二个手风琴面板打开的情况下加载。
标签: php javascript jquery hyperlink accordion