如何确定哪个ulli在jquery中处于活动状态?
我有以下html代码:如何确定哪个ulli在jquery中处于活动状态?,jquery,html,Jquery,Html,我有以下html代码: <div id="menu"> <div id="memberDetails"><h3><span>Welcome,</span><br /> <em>John Doe</em></h3> </div> <ul> <li class="active"&
<div id="menu">
<div id="memberDetails"><h3><span>Welcome,</span><br /> <em>John Doe</em></h3> </div>
<ul>
<li class="active"><a href="#home" class="contentLink">Home <span class="icon"></span></a></li>
<li><a href="#email" class="contentLink">Email<span class="icon"></span></a></li>
<li><a href="#sns" class="contentLink">Social Networking<span class="icon"></span></a></li>
<li><a href="#promos" class="contentLink">Promos<span class="icon"></span></a></li>
<li><a href="#rewards" class="contentLink">Rewards<span class="icon"></span></a></li>
</ul>
</div>
<div id="email-menu" style='display:none'>
<div id="email-memberDetails"><h3><span>Welcome,</span><br /> <em>Another Menu</em></h3> </div>
<ul>
<li><a href="#all" class="contentLink">All <span class="icon"></span></a></li>
<li><a href="#yahoo" class="contentLink">Yahoo<span class="icon"></span></a></li>
<li><a href="#gmail" class="contentLink">Gmail<span class="icon"></span></a></li>
<li><a href="#hotmail" class="contentLink">Hotmail<span class="icon"></span></a></li>
</ul>
</div>
}))
在我上面的代码中,我有两个div,其中包含两个不同的ulli内容。现在我想做的是,当链接
被点击/激活时,它将隐藏
,现在显示
。在jquery中如何实现这一点?如何确定电子邮件链接是否处于活动状态?请注意,ID是唯一的,请将类用于公共元素(memberDetails)
我上面的代码有效
请尝试使用以下代码:
老实说,我认为这是做你想做的事情的正确和快速的方法:
$('a[href=#email]').click(function() {
$('#menu').hide();
$('#email-menu').show();
});
您的代码有一个问题,即每当单击其中一个标记时隐藏菜单,尽管单击的标记不是“电子邮件”。这就是我的目的。我想出版商还有其他菜单:#sns菜单、#促销菜单、#奖励菜单、#所有菜单、#雅虎菜单、#gmail菜单、#hotmail菜单:)奇怪的部分在你的JSF中,但当我在我的网站上申请时,它不会起作用。我已经添加了我的外部js文件,我知道这就是这次事件的幕后黑手。希望你能再次帮助我激励JW。请再看我的帖子。谢谢
<div id="menu">
<div class="memberDetails"><h3><span>Welcome,</span><br /> <em>John Doe</em></h3> </div>
<ul>
<li class="active"><a href="#home" class="contentLink">Home <span class="icon"></span></a></li>
<li><a href="#email" class="contentLink">Email<span class="icon"></span></a></li>
<li><a href="#sns" class="contentLink">Social Networking<span class="icon"></span></a></li>
<li><a href="#promos" class="contentLink">Promos<span class="icon"></span></a></li>
<li><a href="#rewards" class="contentLink">Rewards<span class="icon"></span></a></li>
</ul>
</div>
<div id="email-menu" style='display:none'>
<div class="memberDetails"><h3><span>Welcome,</span><br /> <em>Another Menu</em></h3> </div>
<ul>
<li><a href="#all" class="contentLink">All <span class="icon"></span></a></li>
<li><a href="#yahoo" class="contentLink">Yahoo<span class="icon"></span></a></li>
<li><a href="#gmail" class="contentLink">Gmail<span class="icon"></span></a></li>
<li><a href="#hotmail" class="contentLink">Hotmail<span class="icon"></span></a></li>
</ul>
</div>
$("#email").click(function(){
if($(this).parent().is(".active")){
$("#menu").hide();
$("#email-menu").show();
}
});
$(function() {
$(".contentLink").click(function() {
if( $(this).attr('href') == '#email' ) {
$("#menu").hide();
$("#email-menu").show();
}
});
});
$("a").click(function() {
var thiz = $(this);
// hide all menu that ends with 'menu'
$("div[id$=menu]").hide();
// show [clicked id]-menu element
$(thiz.attr("href") + "-menu").show();
});
$('a[href=#email]').click(function() {
$('#menu').hide();
$('#email-menu').show();
});