Javascript removeAttribute在IE中工作但不在Chrome中工作

时间:2011-06-03 16:26:57

标签: javascript google-chrome getelementbyid

<body onload="document.getElementById('menuTest').style.removeAttribute('display')">

这是我正在使用的代码。基本上我只是在页面上的其他内容都加载后才尝试使元素可见。它适用于IE,但不适用于Chrome。我不会和Js一起工作......但是如果我没记错的话,我需要做一些关于getElementById函数的东西吗?

3 个答案:

答案 0 :(得分:3)

<body onload="document.getElementById('menuTest').style.removeProperty('display')">

测试页面:http://www.quirksmode.org/dom/tests/cssMisc.html#removeProperty

答案 1 :(得分:1)

您不对样式使用remove属性,而是将其设置为所需的值。

document.getElementById('menuTest').style.display = "block"; //"inline"

答案 2 :(得分:0)

如果您的元素在CSS中设置了CSS3定时转换,即使您的代码正确,javascript也会失败。因为元素在javascript触发时正在转换,所以它无法在某些浏览器中操作它(Chrome就是其中之一)。在这些情况下,尝试在转换有时间完成呈现元素之后将javascript延迟激活。