在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 相关文章推荐
JavaScript 通过模式匹配实现重载
Aug 12 Javascript
js获取location.href的参数实例代码
Aug 02 Javascript
实现js保留小数点后N位的代码
Nov 13 Javascript
使用Javascript简单实现图片无缝滚动
Dec 05 Javascript
JQuery中serialize()用法实例分析
Feb 06 Javascript
AngularJS在IE8的不支持的解决方法
May 13 Javascript
浅谈在js传递参数中含加号(+)的处理方式
Oct 11 Javascript
Node.js利用debug模块打印出调试日志的方法
Apr 25 Javascript
微信小程序之发送短信倒计时功能
Aug 30 Javascript
Vuejs学习笔记之使用指令v-model完成表单的数据双向绑定
Apr 29 Javascript
js实现消灭星星(web简易版)
Mar 24 Javascript
微信小程序实现列表的横向滑动方式
Jul 15 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
php eval函数用法 PHP中eval()函数小技巧
2012/10/31 PHP
深入理解:XML与对象的序列化与反序列化
2013/06/08 PHP
PHP生成Gif图片验证码
2013/10/27 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
2019/08/12 PHP
TP5框架实现的数据库备份功能示例
2020/04/05 PHP
一个简单的动态加载js和css的jquery代码
2014/09/01 Javascript
jQuery添加删除DOM元素方法详解
2016/01/18 Javascript
简单的js计算器实现
2016/10/26 Javascript
Vue计算属性的学习笔记
2017/03/22 Javascript
Linux CentOS系统下安装node.js与express的方法
2017/04/01 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
vue之浏览器存储方法封装实例
2018/03/15 Javascript
Vue项目全局配置微信分享思路详解
2018/05/04 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
2019/08/16 Javascript
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
vue2.x数组劫持原理的实现
2020/04/19 Javascript
[04:28]DOTA2亚洲邀请赛小组赛第五日 TOP10精彩集锦
2015/02/03 DOTA
Python中使用摄像头实现简单的延时摄影技术
2015/03/27 Python
python、java等哪一门编程语言适合人工智能?
2017/11/13 Python
Python 输入一个数字判断成绩分数等级的方法
2018/11/15 Python
python中字符串数组逆序排列方法总结
2019/06/23 Python
wxPython色环电阻计算器
2019/11/18 Python
使用 Python 在京东上抢口罩的思路详解
2020/02/27 Python
Python实现屏幕录制功能的代码
2020/03/02 Python
Windows下pycharm安装第三方库失败(通用解决方案)
2020/09/17 Python
Bobbi Brown芭比波朗美国官网:化妆师专业彩妆保养品品牌
2016/08/18 全球购物
美国婚礼礼品网站:MyWeddingFavors
2018/09/26 全球购物
神话般的珠宝:Ross-Simons
2020/07/13 全球购物
护士思想汇报
2014/01/12 职场文书
小学生期末评语大全
2014/04/21 职场文书
见习期个人总结
2015/03/05 职场文书
幼儿园教师节活动总结
2015/03/23 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书