html元素加载的时候隐藏,使用的时候显示怎么做

2024-11-17 04:51:46
推荐回答(4个)
回答1:

获取当前预算的样式不能用element.style, 它只是用来赋值的。故document.getElementById(e).style.display不会正确返回当前元素的display值,所以,会发生display属性是none时函数失效。

应该使用currentStyle或getComputedStyle(IE和Firefox分别支持)获取元素的样式对象,示例如下:

var o = document.getElementById(e), currentStyle;
currentStyle = o.currentStyle != null ? o.currentStyle : getComputedStyle(o, false);

然后这样获取display值:

switch (currentStyle.display) {
  ...
}

回答2:

function show(e){
var i=document.getElementById(e).style.display;
switch (i){
case "block":{
document.getElementById(e).style.display="none";
break; }
case "none":document.getElementById(e).style.display="block";
}
}//
这样试试

回答3:

先看看alert( document.getElementById(e).style.display );的值是啥?如果一开始css没有规定这个值很可能是null或者undefind而不是空。

回答4:

是hover效果吗?

那样的话用css也能做
#menu ul { display: none; }
#menu li:hover ul { display: block;}