扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:meizz 来源:CSDN 2008年1月20日
关键字: 赋值无效 style.height ie浏览器
今天我在做多页面MDI脚本控件(MzMultiPage),在IE等浏览器里都已经测试通过没有任何问题,但是在Mozilla、Firefox、Netscape里测试时问题就来了,我的多页面是在页面里用到了 iframe,这些 iframe 初始的 style.height 都是0,而在加载页面之后,iframe 就会自适应被加载的页面高度,我是通过 iframe.style.height=300 这样撑起 iframe 的高度,这样处理在IE系列浏览器里没有任何问题,但在非IE浏览器里死活行不通,通过跟踪,发现根本没有把这个 300 赋给 style.height,最后测试出来竟然必须给定赋值的单位,即 iframe.style.height="300px",这样赋值才有效,没有单位的赋值无效,郁闷了我老半天!
说明一下环境:我用的是XHTML的DTD,即在页面头上是:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">,也正是因为这个 XHTML1.dtd 才导致非IE浏览器里的 style.height 有问题。
另外透露一点知识:在Netsacpe里的iframe,若通过设置 style.display="none" 隐藏这个 iframe 的话,会把通过脚本动态写入到 iframe 的HTML“冲掉”。所以在 Netscape 里的 iframe 若有脚本写入HTML又需要动态隐藏/显示这个 iframe 的操作时建议你使用 style.width="0px" style.height="0px"; 这样的方式隐藏!
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者