style.display属性

aishangdren 2009-09-02 09:57:44
//创建DIV的脚本
var _loadDiv = "aaDIV";
var loadDiv = document.createElement("DIV");
loadDiv.id = _loadDiv;
document.body.appendChild(loadDiv);
//设置div样式
with (loadDiv.style) {
position = "absolute";
width = 150;
height = 100;
display = "";
}
----------------------------------------
我在body里面加了这么个DIV
当创建DIV时 指定 display = "" 的时候,DIV默认能显示出来,
而且我document.getElementById(_loadDiv).style.display = "none"时能隐藏,
document.getElementById(_loadDiv).style.display = "" 时能显示出来
-----
当创建DIV时 指定 display = "none" 的时候,DIV默认不显示出来,
我用document.getElementById(_loadDiv).style.display = ""时,死活也显示不出来
我测试了alert(document.getElementById(_loadDiv).style.width);等属性时,都是正确的


所以初始终为display = ""时怎么操作display都可以,初始终为display = "none"时怎么操作display 都不可以
请帮个忙,谢谢
...全文
198 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
gkw521 2009-09-02
  • 打赏
  • 举报
回复
<script language="javascript">
var _loadDiv = "aaDIV";
var loadDiv = document.createElement("DIV");
loadDiv.id = _loadDiv;
document.body.appendChild(loadDiv);
with(loadDiv.style){
position = "absolute";
width = 100;
height = 100;
top = 150;
left = 100;
border = 1;
display = "";
background = "yellow";
fontsize = 5;
borderColor = "green";
display="none"
}
document.getElementById(_loadDiv).style.display="";
</script>
IETester for IE6测试正常
aishangdren 2009-09-02
  • 打赏
  • 举报
回复
空DIV是指? 带innerHTML的就不为空?

var _loadStatMsg = "abc";
var loadDiv = cDocument.createElement("DIV");
loadDiv.id = _loadDiv;
cDocument.body.appendChild(loadDiv);
//设置div样式
with (loadDiv.style) {
position = "absolute";
width = 100;
height = 100;
top = 150;
left = 100;
border = 1;
display = "none";
background = "yellow";
fontsize = 5;
borderColor = "green";
}
loadDiv.innerHTML = _loadStatMsg;

这样是否就不为空?
gkw521 2009-09-02
  • 打赏
  • 举报
回复
另外,请用XHTML语法写,单位xp带上
aishangdren 2009-09-02
  • 打赏
  • 举报
回复
就是默认display = "none"时,
操作怎么也显示不出来(重新赋值成display = "")
gkw521 2009-09-02
  • 打赏
  • 举报
回复
这个问题。应该是postion为absolute时的空DIV默认不显示~
aishangdren 2009-09-02
  • 打赏
  • 举报
回复
我用的是IE6.0
loadDiv.innerHTML这个无所谓,我本来的样式是这样的,带有黄色后背景来区分的
with (loadDiv.style) {
position = "absolute";
width = 100;
height = 100;
top = 150;
left = 100;
border = 1;
display = "";
background = "yellow";
fontsize = 5;
borderColor = "green";
}
默认display = "";时,这块黄色区域是可以显示出来的
就是默认display = "none"时,怎么也显示不出来

gkw521 2009-09-02
  • 打赏
  • 举报
回复
可以显示的,你创建div的时候.加上这个:
loadDiv.innerHTML="my div"
xiongzhijian 2009-09-02
  • 打赏
  • 举报
回复
不知道用的什么浏览器..测试环境都没有..

理论上是没有问题.
hookee 2009-09-02
  • 打赏
  • 举报
回复
那可能是其它问题了

<script>
window.onload = function(){
document.getElementById("pad").style.display = "block";
}
</script>
<div id="pad" style="display:none;">xxx</div>
aishangdren 2009-09-02
  • 打赏
  • 举报
回复
刚才试了下,document.getElementById(_loadDiv).style.display = "block";也没显示出来
hookee 2009-09-02
  • 打赏
  • 举报
回复
document.getElementById(_loadDiv).style.display = "block"; 试试看

87,909

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧