我使用JavaScript修改了页面上的某些样式,然后提醒修改后的样式。在 IE v7 中,虽然警报消息显示已进行更改,但页面的视觉呈现没有任何差异。然而相同的代码在 FF 中运行良好。原因可能是什么?我注意到的另一件事是,当我使用开发人员工具栏的脚本控制台时,我能够获得预期的结果,但当我将 js 放入脚本标记中时却无法获得预期的结果。
示例代码 -
function change()
{
var text=document.getElementsByTagName("h2");
var i=0;
var p=text[0];
while(p)
{
alert(p.style.cssText);
p.style.cssText="color:#565656;";
p.innerHTML="Changed";
alert(p.parentNode.innerHTML);
i++;
p=text[i];
}
}
这只是简单地放入脚本标记中并放入正文中以进行测试。尽管稍后的 JavaScript 警报显示了更改,但对 innerHTML 或样式所做的更改不会反射(reflect)在 IE 浏览器窗口中。
最佳答案
不要以这种方式更改样式,而是直接设置“color”属性:
p.style.color = '#565656';
关于页面上的 Javascript 修改未反射(reflect)在 IE 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6650317/