function win_doInit(){ var room = document.getElementById("win") if (room.style.display=="block"){ room.style.color= "#ffffff "; } if (room.style.display=="none"){ room.style.display= "block"; room.style.color= "#ffffff"; } }
if (room.style.display=="none"){ room.style.display= "block"; room.style.color= "#ffffff"; } } 一样不行 function win_doInit(){ var room = document.getElementById("win") if(room.style.display=="block"){ room.style.color="#ffffff"; } else{ if(room.style.display=="none"){ room.style.display="block"; } else{room.style.display="block";} } } 这样是可以运行的,一定要判断display的else 我只要判断两个情况,其他情况我都不考虑 难道不行?
不是分号的问题
加上分号if...if的这段也是无法运行成功
function win_doInit(){
var room = document.getElementById("win")
if (room.style.display=="block"){
room.style.color= "#ffffff ";
} if (room.style.display=="none"){
room.style.display= "block";
room.style.color= "#ffffff";
}
}
room.style.display= "block";
room.style.color= "#ffffff";
}
}
一样不行
function win_doInit(){
var room = document.getElementById("win")
if(room.style.display=="block"){
room.style.color="#ffffff";
}
else{
if(room.style.display=="none"){
room.style.display="block";
}
else{room.style.display="block";}
}
}
这样是可以运行的,一定要判断display的else
我只要判断两个情况,其他情况我都不考虑
难道不行?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.win{background: #F3F3F3; border:#0066FF 1px solid; overflow:hidden; position:absolute; width:500px; height:100px; cursor:default; display:none }
#win0{left:100px; top:50px;}
#win1{left:100px; top:200px}
.win_title{color:#FFFFFF; background-color:#0066FF; height:20px}
.win_title_left{float:left; width:200px}
.win_title_right{width:30px; float:right}
.win_txt{height:100%; padding:3px}</style>
<script type="text/javascript">function win_doInit(x){
var room = document.getElementById("win"+x)
if(room.style.display=="block"){
room.style.color="#ffffff";
}
else{
if(room.style.display=="none"){
room.style.display="block";
}
else{room.style.display="block";}
}
}
</script>
</head><body><a href="javascript:win_doInit(0)">dfsdafdsa</a>
<div class="win" id="win0">
<div class="win_title">
<div class="win_title_left">该处为第一个窗口的标题</div>
<div class="win_title_right">-=x</div>
</div>
<div class="win_txt">窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处窗口内容显示处</div>
</div>
<div class="win" id="win1">
<div class="win_title">
<div class="win_title_left">这个是第二个窗口的标题显示</div>
<div class="win_title_right">-=x</div>
</div>
<div class="win_txt">第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口第二个窗口</div>
</div>
</body>
</html>
.win{display:none;}
或
#win{display:none;}<div id="win"></div>
或
<div class="win" id="win"></div>主要是因为浏览器有时取到的 style.display
不是 'none' 而是 '' 当然就不对了
<div id="win" style="display:none"></div>
这么写没问题
第一次点击style.display就是取""
为什么?不能直接取.win{}中的值?
var room = document.getElementById("win")
if (room.style.display=="block"){
room.style.color= "#ffffff ";
} else if (room.style.display=="none"){
room.style.display= "block";
room.style.color= "#ffffff";
}
}都是if就都要执行里面内容
不过liveforever_1981 才是问题的症结所在