$("table").everyTime(5000, function(){
if(($("#morning").css("display")) != "none"){
$("#morning").hide();
$("#afternoon").show();
}else{
$("#morning").show();
$("#afternoon").hide();
}
$.ajax({
type: "GET",
url: "sample.xml",
dataType: "xml",
success: parseXml
});
}, 0);
});
我的桌子早上开始是可见的,所以当我的if语句每5秒运行一次时它应该隐藏它然后使下一个表可见。当早晨不可见时,我希望它被设置为可见。
出于某种原因,看起来简单的if语句是行不通的。如果我摆脱了别的东西,它会隐藏早晨并显示下午。但是,当添加else时,没有任何事情发生。
答案 0 :(得分:1)
请改用.is(':visible')
。它可能不一定具有该属性。
if ($("#morning").is(":visible")) {
$("#morning").hide();
$("#afternoon").show();
} else {
$("#morning").show();
$("#afternoon").hide();
}
或者,如果在另一个可见的情况下始终隐藏一个,您也可以使用toggle()
。
$("#morning").toggle();
$("#afternoon").toggle();
答案 1 :(得分:0)
$("table").everyTime(5000, function(){
if($("#morning").is(':visible')){
$("#morning").hide();
$("#afternoon").show();
} else {
$("#morning").show();
$("#afternoon").hide();
}
$.ajax({
type: "GET",
url: "sample.xml",
dataType: "xml",
success: parseXml
});
}, 0);