我有两个元素(setProject和setHdc)。单击时,它们会显示其他表格元素。但我想只让一组表格元素同时出现。例如,当用户点击" setProject"时," setHdc"元素必须隐藏。否则相同。我有什么方法可以做到如果判断?或者有更简单的方法吗?
<script>
$(document).ready(function(){
$("#setProject ").click(function(){
$("#test1").fadeToggle("fast");
$("#projectTable1").fadeToggle("fast");
$("#projectTable2").fadeToggle("fast");
$("#projectTable3").fadeToggle("fast");
});
});
$(document).ready(function(){
$("#setHdc").click(function(){
$("#hdcTable1").fadeToggle("fast");
$("#hdcTable2").fadeToggle("fast");
});
});
</script>
答案 0 :(得分:8)
你应该使用
if($(this).is(':visible')){
doSomething();
}else{
doSomethingElse();
}
else
部分仅适用于display:none
的元素。具有visibility:hidden/opacity:0
的元素将被视为可见
答案 1 :(得分:4)
使用:visible选择器
if($('#element').is(':visible'))
{
//write the code for visible
}
else
{
// write the invisible code
}
答案 2 :(得分:0)
$(document).ready(function(){
$("#setProject ").click(function(){
$("#setHdc").hide();
$("#test1").fadeToggle("fast");
$("#projectTable1").fadeToggle("fast");
$("#projectTable2").fadeToggle("fast");
$("#projectTable3").fadeToggle("fast");
});
$("#setHdc").click(function(){
$("#setProject").hide();
$("#hdcTable1").fadeToggle("fast");
$("#hdcTable2").fadeToggle("fast");
});
});
只需隐藏每个元素的.click事件上的对立元素。