我的jquery有一个小问题。
情况:
我有一段jquery代码,我切换结果。
JS代码:
//Set default open/close settings
$('.acc_container').hide(); //Hide/close all containers
//$('.acc_trigger:first').addClass('active').next().show(); //Add "active" class to first trigger, then show/open the immediate next container
//On Click
$('.acc_trigger').click(function(){
if( $(this).next().is(':hidden') ) { //If immediate next container is closed...
$('.acc_trigger').removeClass('active').next().slideUp(); //Remove all .acc_trigger classes and slide up the immediate next container
$(this).toggleClass('active').next().slideDown(); //Add .acc_trigger class to clicked trigger and slide down the immediate next container
}
return true; //Prevent the browser jump to the link anchor
});
现在我要打开 - 从网址切换锚点位置上的项目,如(http://x.com/page.php#toggleItem2
)
问题: 如何从URL读取toggleItem2并准确打开此部分?
其他:
HTML代码:
<div class="container">
<h2 class="acc_trigger"><a href="#toggle1">Item1</a></h2>
<div class="acc_container">
<div class="block">
Inner Text in toggle 1
</div>
</div>
<h2 class="acc_trigger"><a href="#toggle2">Item2</a></h2>
<div class="acc_container">
<div class="block">
Inner Text in toggle 2
</div>
</div>
<h2 class="acc_trigger"><a href="#toggle3">Item3</a></h2>
<div class="acc_container">
<div class="block">
Inner Text in toggle 3
</div>
</div>
</div>
我希望问题明确定义。
提前致谢。
答案 0 :(得分:4)
您应该根据主题提供div
个ID,例如
<h2 class="acc_trigger"><a href="#toggle1">Item1</a></h2>
<div id="toggle1" class="acc_container">
<div class="block">
Inner Text in toggle 1
</div>
</div>
您可以从location
对象获取文档片段:
document.location.hash
然后它就是(假设其他容器都隐藏了):
$(document.location.hash).slideDown().prev().addClass('active');
答案 1 :(得分:1)
尝试jquery切换自己
答案 2 :(得分:0)
这是在window.location.hash
变量中保存的。
答案 3 :(得分:0)
您可以这样做:
使用Javascript:
$().ready(function(){
$('.acc_trigger a').click(function(){
$(this).closest('.acc_trigger').next('.acc_container').toggle()
return false;
})
})