我正在尝试将导航菜单项和 jQuery 选项卡链接在一起。这意味着我有两个子菜单项,只是认为它们是category
anditem
并且我的页面中有 2 个选项卡,它们是My category
and My Items
。
我想用这个做的是My category
当我点击子菜单中的链接时我想打开标签,category
反之亦然。My Item
当我单击子菜单中的链接时,我还想打开选项卡,item
反之亦然。
我试过用 jQuery 做,但不能正常工作。
我的 HTML -
<ul id="new-menu">
<li class="dropdown-holder" id="">
<a>My Menu</a>
<div class="dropdown">
<div class="menu-container">
<div class="menu-link">
<a href="">my sub menu 1</a>
</div>
<div class="menu-link">
<a href="">my sub menu 2</a>
</div>
</div>
</div>
</li>
<li class="dropdown-holder" id="">
<a>Category & Item</a>
<div class="dropdown">
<div class="menu-container">
<div class="menu-link">
<a href="" id="cat_link">Category</a>
</div>
<div class="menu-link">
<a href="" id="item_link">Item</a>
</div>
</div>
</div>
</li>
</ul>
<div id="main">
<ul>
<li><a href="#tabs-1">Category</a></li>
<li><a href="#tabs-2">Item</a></li>
</ul>
<div id="tabs-1">
<p>On the Insert tab, the galleries include items that are designed to coordinate with the overall look of your document. You can use these galleries to insert tables, headers, footers, lists, cover pages, and other document building blocks. When you create pictures, charts, or diagrams, they also coordinate with your.</p>
</div>
<div id="tabs-2">
<p>On the Insert tab, the galleries include other document building blocks. When you create pictures, charts, or diagrams, they also coordinate with your.</p>
</div>
</div>
这是我的 jQuery:
function setCurrent(element) {
$('div').removeClass('current');
$(element).parent().addClass('current');
}
$('#cat_link').click(function() {
$('#tabs-1').hide();
$('#tabs-2').show();
setCurrent(this);
$('#ui-id-2').parent().removeClass('ui-tabs-active ui-state-active');
$('#ui-id-2').parent().addClass('ui-state-default ui-corner-top');
$('#ui-id-1').parent().removeClass('ui-state-default ui-corner-top');
$('#ui-id-1').parent().addClass('ui-tabs-active ui-state-active');
return false;
});
$('#item_link').click(function() {
$('#tabs-2').hide();
$('#tabs-1').show();
setCurrent(this);
$('#ui-id-1').parent().removeClass('ui-tabs-active ui-state-active');
$('#ui-id-1').parent().addClass('ui-state-default ui-corner-top');
$('#ui-id-2').parent().removeClass('ui-state-default ui-corner-top');
$('#ui-id-2').parent().addClass('ui-tabs-active ui-state-active');
return false;
});
这是JS 小提琴
您可以看到它以某种方式工作,但并不完美。逆序也不行。逆序意味着我需要根据标签的点击来选择子菜单项。
更新 -
根据上面的JSFiddle
如果我从子菜单类别选项卡单击类别链接正在打开,但它的内容从项目选项卡显示。
如果我单击子菜单项选项卡中的项链接正在打开,但其内容来自类别选项卡。
希望有人能帮助我。
谢谢你。