您当前的位置: 首页 » javscript编程学习
» IE6 后绑定的事件DOM创建的iframe不能自动载入数据
IE6 后绑定的事件DOM创建的iframe不能自动载入数据
IE6 下后绑定的事件,如下
btn.onclick=setIframe(url);
function setIframe(url){
return function(){
var ifm=document.createElement("iframe");
ifm.src=url;
document.body.appendChild(ifm);
};
}
function setIframe(url){
return function(){
var ifm=document.createElement("iframe");
ifm.src=url;
document.body.appendChild(ifm);
};
}
运行发现,DOM里有iframe的节点,就是没有加载iframe里的内容,一片空白
如果在代码里运行
function setIframe(url){
var ifm=document.createElement("iframe");
ifm.src=url;
document.body.appendChild(ifm);
}
setIframe(url);
var ifm=document.createElement("iframe");
ifm.src=url;
document.body.appendChild(ifm);
}
setIframe(url);
却可以自动加载,而且两者节点信息一样
测试其他浏览器都没有相通情况,包括IE7,看样子是IE6的BUG了
解决方案是再后期绑定
判断浏览器和浏览器版本,如果是IE 而且版本小于7
ifm.src=url;改成 var m=new setsrc(document.body,url);
function setsrc(ele,url){
var self=this,timer;
this.init=function(){timer=setTimeout(self.loadifm,50);};
this.loadifm=function(){ele.src=url;clearTimeout(timer);};
this.init();
}
否则
ifm.src=url;
function setsrc(ele,url){
var self=this,timer;
this.init=function(){timer=setTimeout(self.loadifm,50);};
this.loadifm=function(){ele.src=url;clearTimeout(timer);};
this.init();
}
否则
ifm.src=url;
名字:
全部评论:
loading...
申明:本站部分文章来自网络,由于各种原因对文章的来源无从考究,如果您是“
IE6 后绑定的事件DOM创建的iframe不能自动载入数据
”的原作者,若侵犯您的版权,请与我联系!联系方法:email:ahuinan@21cn.com QQ:106494262
文章档案
- 作者:佚名
- 来源:转载
- 日期:2011/8/22 10:37:00
- 点击:loading...
网友投票(您觉得这篇文章怎样?)
请稍侯......
请稍侯......