用 Javascript 插入 IFrame 标签,在 Firefox、Chrome 等浏览器上,默认都是透明的,但 IE 有默认的白色背景。
本来,在 html 中写入 IFrame 标签,并加上 allowTransparent=”true” 这样的属性,IE 也一样可以透明,但今天的问题是必须用 Javascript 插入。
用 IE Developer ToolBar 测试,在 IFrame 的 src 页面的 body 样式上加上 backgroud:transparent 可以使 IFrame 透明。
但我们要用 Javascript,本域的 Javascript 脚本是没法设置跨域 IFrame 页面的,况且创建 IFrame 的时候还没设置 src,所以这个办法不行。
只能用个土办法,把 src 设置为一个绝对路径的 html 页面,这个页面你自己可以任意编辑,把 body 的样式设成透明即可。
注意,为了性能,只在 IE 浏览器下设置 src,Firefox 和 Chrome 都不用设置。
在这一点上,IE7 跟 IE6 一样弱,比现代浏览器差远了!