在IE6下发生Internet Explorer cannot open the Internet site错误


Posted in Javascript onJune 21, 2010

具体出现的情况是这样的:

在页面还没有完全加载的情况下,鼠标点击触发了一个生成iFrame的脚本事件。
先是想到,将脚本事件,在页面加载完全后,再动态添加到触发的位置,这样,页面加载完全之前,这里是不会有脚本事件的,自然也不会报错。

以上办法有些被动,于是去参看生成iframe的脚本。

正常的页面结构是

<body> 
<form> 
........ 
</form> 
</body>

生成iframe的脚本是:
function CreateiFrame(){ 
var objBody = document.getElementsByTagName("body").item(0); 

var objiFrame = document.createElement("iframe"); 

objBody.appendChild(objiFrame); 
}

appendChild() 方法,在节点的子节点列表末添加新的子节点。所以创建iframe后的DOM为:
<body> 
<form> 
........ 
</form> 
<iframe> 
........ 
</iframe> 
</body>

因为是在<form>还没有加载完全的情况下,创建了<iframe>,所以在IE6下就出现了页面错误。
相信在看到这里的时候,已经发现了解决的办法:将<iframe>创建在<form>之前的话,就没有问题了!
那么,我们就需要用到另外一个添加元素的方法 insertBefore():
function CreateiFrame(){ 
var objBody = document.getElementsByTagName("body").item(0); 
var objiFrame = document.createElement("iframe"); 
objBody.insertBefore(objiFrame,document.getElementById("form1")); //form1为form的id 
}

insertBefore() 方法,在节点的子节点列表任意位置插入新的节点。
insertBefore有2个参数可以设置,第一个是和appendChild相同的;第二可以为null,效果等同于insertBefore() 方法,也可以为指定需要在哪个子节点之前插入新子节点。
<body> 
<iframe> 
........ 
</iframe> 
<form id“form1”> 
........ 
</form> 
</body>
Javascript 相关文章推荐
jquery原创弹出层折叠效果点击折叠弹出一个层
Mar 12 Javascript
分享一个插件实现水珠自动下落效果
Jun 01 Javascript
只要1K 纯JS脚本送你一朵3D红色玫瑰
Aug 09 Javascript
深入理解bootstrap框架之入门准备
Oct 09 Javascript
浅谈JavaScript的自动垃圾收集机制
Dec 15 Javascript
jQuery使用正则表达式替换dom元素标签用法示例
Jan 16 Javascript
vue.js响应式原理解析与实现
Jun 22 Javascript
vue的全局变量和全局拦截请求器的示例代码
Sep 13 Javascript
vue 优化CDN加速的方法示例
Sep 19 Javascript
iview同时验证多个表单问题总结
Sep 29 Javascript
Javascript表单序列化原理及实现代码详解
Oct 30 Javascript
三剑客:offset、client和scroll还傻傻分不清?
Dec 04 Javascript
复制Input内容的js代码_支持所有浏览器,修正了Firefox3.5以上的问题
Jun 21 #Javascript
js操作时间(年-月-日 时-分-秒 星期几)
Jun 20 #Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
Jun 19 #Javascript
一段批量给页面上的控件赋值js
Jun 19 #Javascript
一个简单的js渐显(fadeIn)渐隐(fadeOut)类
Jun 19 #Javascript
高性能WEB开发 flush让页面分块,逐步呈现 flush让页面分块,逐步呈现
Jun 19 #Javascript
WEB高性能开发之疯狂的HTML压缩
Jun 19 #Javascript
You might like
CI框架中cookie的操作方法分析
2014/12/12 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
php中使用base HTTP验证的方法
2015/04/20 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
jQuery UI-Draggable 参数集合
2010/01/10 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
浅析JavaScript声明变量
2015/12/21 Javascript
实例讲解jQuery中对事件的命名空间的运用
2016/05/24 Javascript
JS之获取样式的简单实现方法(推荐)
2016/09/13 Javascript
JavaScript 详解预编译原理
2017/01/22 Javascript
vue proxyTable 接口跨域请求调试的示例
2017/09/12 Javascript
微信小程序实现打开内置地图功能【附源码下载】
2017/12/07 Javascript
Vue侦测相关api的实现方法
2019/05/22 Javascript
vue 实现购物车总价计算
2019/11/06 Javascript
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
[54:25]Ti4 循环赛第三日LGD vs MOUZ
2014/07/12 DOTA
[59:26]DOTA2上海特级锦标赛D组资格赛#1 EG VS VP第二局
2016/02/28 DOTA
python中实现定制类的特殊方法总结
2014/09/28 Python
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
利用Python获取赶集网招聘信息前篇
2016/04/18 Python
tensorflow实现简单的卷积神经网络
2018/05/24 Python
python 利用pandas将arff文件转csv文件的方法
2019/02/12 Python
python 的 scapy库,实现网卡收发包的例子
2019/07/23 Python
python3 selenium自动化 frame表单嵌套的切换方法
2019/08/23 Python
Python实现爬取并分析电商评论
2020/06/19 Python
CSS3系列之3D制作方法案例
2017/08/14 HTML / CSS
CSS3实现3D翻书效果
2016/06/20 HTML / CSS
英国领先的男士美容护发用品公司:Mankind
2016/08/31 全球购物
英国家电直销:Appliances Direct
2016/09/22 全球购物
AMAVII眼镜官网:时尚和设计师太阳镜
2019/05/05 全球购物
含精油的天然有机化妆品:Indemne
2019/08/27 全球购物
迪卡侬波兰体育用品商店:Decathlon波兰
2020/03/31 全球购物
助人为乐道德模范事迹材料
2014/08/16 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
证婚人致辞精选
2015/07/28 职场文书