页面上的 Javascript 修改未反映在 IE 中

发布于 2024-11-19 14:02:20 字数 630 浏览 0 评论 0原文

我使用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 或样式所做的更改不会反映在 IE 浏览器窗口中。

I used JavaScript to modify some style on the page and then alert the modified style. In IE v7, though the alerted message shows that the change has been made, visual rendering of the page shows no difference. The same code however works fine in FF. What could the reason be? Another thing i noted is when i used a developer toolbar's script console I was able to get the expected results but not when i put the js in a script tag.

Sample Code -

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];    
  }    
}   

This was simply put in a script tag and put inside body just to test. The change made to innerHTML or style is not reflected in IE browser window though the later JavaScript alert shows the change.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寂寞花火° 2024-11-26 14:02:20

不要以这种方式更改样式,而是直接设置“color”属性:

  p.style.color = '#565656';

Instead of changing the style that way, directly set the "color" property:

  p.style.color = '#565656';
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文