iframe在IE下出现进度条不完整的解决方法

我们在使用iframe加载页面的时候,一般是通过给iframe的src赋值来加载页面的,采用这种方式打开页面,正常情况下是不会有问题的,但是IE系列产品在使用这种方式加载iframe页面的时候,有一个bug存在,那就是进度条不能完全加载,而且在IE6下尤甚,


这种情况不是每次都会出现,而是存在一定的概率,当操作过于频繁或临界资源被抢夺时,便会产生。

解决方法有如下两种:

1采用submit方式提交到iframe,页面上构建一个form表单,将form表单的target设置成iframe的id或name即可。(这种方法不保证完全有效

javascript代码

var form = document.createElement("form");
form.action=[需要打开的src];
//firefox下,只能识别iframename属性
form.target=[iframe的id或name];
form.submit();
//用完可以删除form
...

2 将iframe的src属性设置再设置一遍。(推荐)

【注意】:有人可能会问再设置一遍src难道不会加载2次吗?实际上是不会的,iframe的属性设置的时间是非常短的,而iframe内容的加载又是异步执行的,所以第二遍的设置只是完成的IE的bug的修复,而不会出现再次加载的情况。

javascript代码

document.getElementById("iframeElem").src=[iframesrc];
document.
getElementById("iframeElem").src=[iframesrc];

 

这样一来,无论怎么点击,都会实现iframe的完全加载。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值