一端简单的向iframe里面注入css的javascript

随手实验了一下这个是好用的(当然这个iframe要同源,否则安全限制无法修改)。原因是我们的系统里面有iframe输出后台的log,里面的样式都是默认的,为了后台无侵入,所以用js修改样式。这样就可以(也可以注入css文件,这样更干净)。注意contentWindow的写法在IE略有不同。

var css = $('testframe').contentWindow.document.createElement('style');
css.type = 'text/css';
css.innerHTML = 'body {font-size: 7px; color: red;}';
$('testframe').contentWindow.document.getElementsByTagName('head')[0].appendChild(css);

2 thoughts on “一端简单的向iframe里面注入css的javascript”

  1. 这样写基本会把ie7搞挂,在chrome下不起作用,在ie6下还要hack一下。强烈建议不要动态写入css文本,有些问题都很诡异。

  2. 嗯,这个我忘记是为了fix什么bug的一个dirty patch,当时检测是OK的。IE7挂掉我就不知道了,IE6需要啥hack?你可以写这里分享一下。总的来说这样的文章都被你挖到了算你厉害,我都忘记了。

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.