Javascript removeAttribute适用于IE,但不适用于Chrome

Javascript removeAttribute working in IE but not Chrome

本文关键字:适用于 不适用 Chrome IE removeAttribute Javascript      更新时间:2023-09-26
<body onload="document.getElementById('menuTest').style.removeAttribute('display')">

这是我正在使用的代码。基本上,我试图让一个元素只有在页面上的其他内容都加载后才可见。它在IE中运行良好,但在Chrome中则不然。我不怎么和Js一起工作。。。但如果我没记错的话,getElementById函数是否有一些不合理的地方需要我做?

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

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

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

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

如果您的元素在CSS中设置了CSS3定时转换,那么即使您的代码是正确的,javascript也会失败。由于javascript启动时元素正在转换,因此在某些浏览器中无法对其进行操作(Chrome就是其中之一(。在这些情况下,请尝试在转换有时间完成元素渲染后延迟javascript以激发。