Coding style 修改a的innerHTML<;风格>;IE8中的元素
我正在创建一个样式元素,我需要在其中加入一些CSS。以下代码适用于Chrome、Safari和FF,但在IE8中失败:Coding style 修改a的innerHTML<;风格>;IE8中的元素,coding-style,internet-explorer-8,innerhtml,Coding Style,Internet Explorer 8,Innerhtml,我正在创建一个样式元素,我需要在其中加入一些CSS。以下代码适用于Chrome、Safari和FF,但在IE8中失败: var styleElement = document.createElement("style"); styleElement.type = "text/css"; styleElement.innerHTML = "body{background:red}"; document.head.appendChild(styleElement); 在IE8中,当涉及inn
var styleElement = document.createElement("style");
styleElement.type = "text/css";
styleElement.innerHTML = "body{background:red}";
document.head.appendChild(styleElement);
在IE8中,当涉及innerHTML部分时,代码失败。我试过做:
var inner = document.createTextNode("body{background:red}");
styleElement.appendChild(inner);
但这也会因“对方法或属性访问的意外调用”而失败
我正在寻找解决方法或修复方法。尝试使用
styleElement.innerText
使用.styleSheet.cssText
注意:与修改单个元素样式相比,在IE8中这似乎非常缓慢
有没有一种更快的方法可以在IE中动态修改样式表
这在IE8中很慢:
styleElement.styleSheet.cssText = "body{background:red}";
这在IE8中也很慢(假设要修改的样式对象是头部的第一个样式元素):
这在IE8中很快:
document.body.style.background = "red";
document.body.style.background = "red";