在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中fixed()方法的使用
Jun 08 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
Dec 30 Javascript
AngularJs自定义服务之实现签名和加密
Aug 02 Javascript
JavaScript简单下拉菜单特效
Sep 13 Javascript
jQuery基于排序功能实现上移、下移的方法
Nov 26 Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
Jun 05 Javascript
详解用函数式编程对JavaScript进行断舍离
Sep 18 Javascript
vue router-link传参以及参数的使用实例
Nov 10 Javascript
使用vue-router为每个路由配置各自的title
Jul 30 Javascript
防止Layui form表单重复提交的实现方法
Sep 10 Javascript
微信小程序服务器日期格式化问题
Jan 07 Javascript
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 Vue.js
复制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执行批量mysql语句的解决方法
2013/05/02 PHP
解析关于wamp启动是80端口被占用的问题
2013/06/21 PHP
PHP之密码加密的几种方式
2015/07/29 PHP
php实现的双色球算法示例
2017/06/20 PHP
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
jquery中get,post和ajax方法的使用小结
2014/02/04 Javascript
JavaScript中的对象序列化介绍
2014/12/30 Javascript
ECMAScript 5中的属性描述符详解
2015/03/02 Javascript
jQuery div拖拽用法实例
2016/01/14 Javascript
jQuery ajax时间差导致的变量赋值问题分析
2016/01/22 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
Vue封装一个简单轻量的上传文件组件的示例
2018/03/21 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
2018/10/11 Javascript
angular6 利用 ngContentOutlet 实现组件位置交换(重排)
2018/11/02 Javascript
JavaScript实现简单的弹窗效果
2020/05/19 Javascript
解决echarts数据二次渲染不成功的问题
2020/07/20 Javascript
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
[02:11]完美世界DOTA2联赛10月28日赛事精彩集锦:来吧展示实力强劲
2020/10/29 DOTA
简单介绍Ruby中的CGI编程
2015/04/10 Python
Python简单操作sqlite3的方法示例
2017/03/22 Python
PyCharm安装第三方库如Requests的图文教程
2018/05/18 Python
使用Python中的reduce()函数求积的实例
2019/06/28 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
2020/01/21 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
美国彩妆品牌:Coastal Scents
2017/04/01 全球购物
Feelunique德国官方网站:欧洲最大的在线美容零售商
2019/07/20 全球购物
女大学生个人求职信
2013/12/09 职场文书
2014年小学元旦活动方案
2014/02/12 职场文书
房产授权委托书范本
2014/09/22 职场文书
单位作风建设自查报告
2014/10/23 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
入党转正申请报告
2015/05/15 职场文书