请,
我想模拟下拉选择,但会有链接,没有表格。 麻烦的是如何在您目前所在的选定和可见类别或子类别链接?
<ul><li>Category
<ul>
<li>Subcategory1</li>
<li>Subcategory2</li>
</ul>
</li></ul>
因此,当您在类别上时,可见将是类别的名称,这很容易,因为它的第一个LI,但是当您在子类别上时,子类别的名称将被“选中”并且可见。
如果您有其他解决方案,请列出,建议我。
对不起我的英语我不知道如何更好地解释:)
答案 0 :(得分:2)
如果我理解正确的话,我觉得你只需要几个div
元素。一个显示当前选择的项目,另一个显示整个菜单(减去当前元素?)。
如果是这种情况,您可以将click事件附加到将更新顶部div文本的每个菜单项:
<div id="current_page">Default Value</div>
<div id="current_menu">
<ul>
<li><a href="page1.html">Page 1</a></li>
<li><a href="page2.html">Page 2</a></li>
</ul>
</div>
然后你将使用jQuery添加一些效果和逻辑:
$("#current_page").click(function(){
$("#current_menu").slideToggle();
});
$("#current_menu a").click(function(event){
event.preventDefault(); //prevent synchronous loading
$("#current_page").html($(this).text());
});
答案 1 :(得分:0)
我认为您正在寻找Suckerfish Dropdowns。
答案 2 :(得分:0)
每次点击后,您需要通过迭代列表项并检查当前位置来设置相应li的类:
<div id="div1">
<ul>
<li>Category
<ul>
<li><a href="abc">Subcategory1</a></li>
<li><a href="xyz">Subcategory2</a></li>
</ul>
</li>
</ul>
</div>
然后你的javascript:
var loc = window.location;
$("#div1 li").each( function(){
var a = $("a", this).attr("href");
if(a == loc){
$(this).addClass("hilight");
} else {
$(this).removeClass("hilight");
}
});
答案 3 :(得分:0)