请问IE9不支持 obj.style.display这样的访问吗?

lytreo650 2013-07-13 11:28:17
现在有这样一句
aDiv[i].style.display="none";
chrome完全没问题,但是IE9好像就没用。aDiv是数组,里面存着div节点对象,请问该怎么改才能让ie9兼容呢?
...全文
275 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝阳 2013-07-15
  • 打赏
  • 举报
回复
用setAttribute呢?
lytreo650 2013-07-14
  • 打赏
  • 举报
回复
引用 3 楼 xiaofanku 的回复:
我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
数组里的div不是原来就有的,都是create出来的,不知道和这个有没有关系。现在的问题是没有很好的解决办法。。。
wohuifude123 2013-07-14
  • 打赏
  • 举报
回复
引用 3 楼 xiaofanku 的回复:
我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
前辈,貌似IE9真的不支持
街头小贩 2013-07-14
  • 打赏
  • 举报
回复
我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
wohuifude123 2013-07-14
  • 打赏
  • 举报
回复
jquery方案 $("aDiv[i]").hide(); IE9问题多多,不支持那个属性确实没太好的办法
wohuifude123 2013-07-14
  • 打赏
  • 举报
回复
IE9不怎么支持.style这属性
wohuifude123 2013-07-14
  • 打赏
  • 举报
回复
IE9的.style确实没效果 我的IE9这个就没效果,浏览器问题
lytreo650 2013-07-14
  • 打赏
  • 举报
回复
也有可能是这样的,div确实是隐藏了,但是里面的元素并没有隐藏。现在换了一种方法,最终的问题解决了,但是还是搞不懂IE。。。
lytreo650 2013-07-14
  • 打赏
  • 举报
回复
引用 7 楼 xiaofanku 的回复:
[quote=引用 5 楼 lytreo650 的回复:] [quote=引用 3 楼 xiaofanku 的回复:] 我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
数组里的div不是原来就有的,都是create出来的,不知道和这个有没有关系。现在的问题是没有很好的解决办法。。。[/quote] 哪你在没有插入到dom节点之前赋的样式吗?在插入到dom节点之后不可能不好使呀[/quote] 这部分代码是这样的,难道是insertBefore的问题?我把div的display属性alert出来,确实是变成none了啊。

aDiv[i]=document.createElement('div');
			for(var j=i+1;aTr[j].className=="hidden";j++)
			{
				aDiv[i].appendChild(aTr[j]);
			}
			oTBody.insertBefore(aDiv[i],aTr[j]);
			aDiv[i].style.display="none";
街头小贩 2013-07-14
  • 打赏
  • 举报
回复
引用 5 楼 lytreo650 的回复:
[quote=引用 3 楼 xiaofanku 的回复:] 我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
数组里的div不是原来就有的,都是create出来的,不知道和这个有没有关系。现在的问题是没有很好的解决办法。。。[/quote] 哪你在没有插入到dom节点之前赋的样式吗?在插入到dom节点之后不可能不好使呀
街头小贩 2013-07-14
  • 打赏
  • 举报
回复
引用 4 楼 wohuifude123 的回复:
[quote=引用 3 楼 xiaofanku 的回复:] 我的IE是10用开发者工具切换到9模式下面正常工作呀

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<p>h</p><p>t</p><p>t</p><p>p</p>
<script type="text/javascript">
var aDiv=document.getElementsByTagName('p');
aDiv[2].style.display="none";
</script>
</body>
</html>

估计还是你的代码有问题
前辈,貌似IE9真的不支持[/quote] msdn library并没有说ie9不支持呀:http://msdn.microsoft.com/en-Us/library/ie/ms530751

87,907

社区成员

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

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