Javascript 使用jQuery show()/hide()
我在我的jsp页面中使用了Javascript 使用jQuery show()/hide(),javascript,jquery,html,Javascript,Jquery,Html,我在我的jsp页面中使用了show()和hide(),它工作得很好,但我很难找到一种方法来隐藏显示后的表。HTML示例: <button id="b1">show 1</button> <button id="b2">show 2</button> <div class="hidden" id="d1"> <div class="hidden" id="d2"> 所以这很好,一次只显示一个,但是我想添加一些脚本,如果显示d
show()
和hide()
,它工作得很好,但我很难找到一种方法来隐藏显示后的表。HTML示例:
<button id="b1">show 1</button>
<button id="b2">show 2</button>
<div class="hidden" id="d1">
<div class="hidden" id="d2">
所以这很好,一次只显示一个,但是我想添加一些脚本,如果显示div2
,我可以点击按钮2
,使div2
隐藏,对div1
也一样。我知道这让人困惑,所以如果你有任何问题,请提问。谢谢。有一个toggle()
方法,您可以使用它来代替显示/隐藏,这将为您完成此操作
没有参数,.toggle()方法只需切换可见性
构成要素:
来源:有一个toggle()
方法,您可以使用它来代替显示/隐藏,这将为您完成此操作
没有参数,.toggle()方法只需切换可见性
构成要素:
来源:我想你想要这个:
$('#b1').click(function(){
$('#d1').toggle();
});
$('#b2').click(function(){
$('#d2').toggle();
});
如果您仍然需要这样做,只有一个可以显示,那么可能是这样的:
$('#b1').click(function(){
if($('#d1').toggle().is(":visible")){
$('#d2').hide();
}
});
$('#b2').click(function(){
if($('#d2').toggle().is(":visible")){
$('#d1').hide();
}
});
$("#b1, #b2").click(function() { $("#d1, d2").toggleClass("hidden") })
我想你想要这个:
$('#b1').click(function(){
$('#d1').toggle();
});
$('#b2').click(function(){
$('#d2').toggle();
});
如果您仍然需要这样做,只有一个可以显示,那么可能是这样的:
$('#b1').click(function(){
if($('#d1').toggle().is(":visible")){
$('#d2').hide();
}
});
$('#b2').click(function(){
if($('#d2').toggle().is(":visible")){
$('#d1').hide();
}
});
$("#b1, #b2").click(function() { $("#d1, d2").toggleClass("hidden") })
你可以通过这个
$('#someDiv:visible')
检查一些东西是否可见,然后进行适当的处理。你可以通过这个$('#someDiv:visible')
检查一些东西是否可见,然后进行适当的处理。我想你需要这个
$('#b1').click(function(){
$('#d1').toggle();
});
$('#b2').click(function(){
$('#d2').toggle();
});
$('#b1').click(function(){
$('#d2').hide();
$('#d1').toggle();
});
$('#b2').click(function(){
$('#d1').hide();
$('#d2').toggle();
});
我想你需要这个
$('#b1').click(function(){
$('#d2').hide();
$('#d1').toggle();
});
$('#b2').click(function(){
$('#d1').hide();
$('#d2').toggle();
});
如果您不使用任何动画,那么在css中定义一个类(例如,.hidden{display:“none”})并切换它可能更有用 因此,您的代码可以是这样的:
$('#b1').click(function(){
if($('#d1').toggle().is(":visible")){
$('#d2').hide();
}
});
$('#b2').click(function(){
if($('#d2').toggle().is(":visible")){
$('#d1').hide();
}
});
$("#b1, #b2").click(function() { $("#d1, d2").toggleClass("hidden") })
如果你想试试这个,告诉我们它是否有效)如果你不使用任何动画,那么在css中定义一个类可能更有用,比如,.hidden{display:“none”}并切换它 因此,您的代码可以是这样的:
$('#b1').click(function(){
if($('#d1').toggle().is(":visible")){
$('#d2').hide();
}
});
$('#b2').click(function(){
if($('#d2').toggle().is(":visible")){
$('#d1').hide();
}
});
$("#b1, #b2").click(function() { $("#d1, d2").toggleClass("hidden") })
如果你愿意,试试这个,告诉我们它是否有效)你不需要检查任何东西,只需切换第一个,并始终隐藏另一个
$('#b1').click(function(){
$('#d1').toggle();
$('#d2').hide();
});
$('#b2').click(function(){
$('#d2').toggle();
$('#d1').hide();
});
您不需要检查任何内容,只需切换第一个,并始终隐藏另一个
$('#b1').click(function(){
$('#d1').toggle();
$('#d2').hide();
});
$('#b2').click(function(){
$('#d2').toggle();
$('#d1').hide();
});
我不清楚问题出在哪里。听起来你发布的脚本符合你的要求。如果你能明确你遇到的问题是什么?如果你想显示一个而隐藏另一个。然后你应该研究一下如何使用切换。你在找切换吗?如果我使用toggle,它将同时显示这两个选项,我正试图避免这种情况,我想我现在已经解决了,谢谢!我不清楚问题出在哪里。听起来你发布的脚本符合你的要求。如果你能明确你遇到的问题是什么?如果你想显示一个而隐藏另一个。然后你应该研究一下如何使用切换。你在找切换吗?如果我使用toggle,它将同时显示这两个选项,我正试图避免这种情况,我想我现在已经解决了,谢谢!啊,这么简单。很好用,谢谢。当允许的时候会标记为答案啊,很简单。很好用,谢谢。如果允许,将标记为答案