defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法


Posted in Javascript onApril 27, 2010

在一个aspx页面中使用了JQuery,但当IE6浏览器打开这个页面的时候会报“Internet Explorer cannot open the Internet site http://localhost:9001/Index.aspx. Operation aborted”的错误,然后就不能正常浏览此页面。如果使用IE7或者IE8就没有此问题。
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法

将所有的js脚本都使用“<!-- -->”标记注释掉(这样虽然会导致问题,但至少可以浏览此页面)。逐个检查后发现了问题所在:

<script src="Jquery/DatePicker/WdatePicker.js" type="text/javascript"></script>

是这行语句引起的问题,注释此行后页面就能正常浏览了。

查询发现是引用的js脚本操作了某个尚未载入的页面元素,这样就很好解决问题,为<script>脚本添加”defer”属性之后,页面可以正常浏览了。

<script defer="defer" src="Jquery/DatePicker/WdatePicker.js" type="text/javascript"></script>

参考资料:

Script中的Defer属性
如果你是一个对系统性能比较关心和在意的人,我想你应该会对Script脚本中的defer属性感兴趣的。
script中的defer属性默认情况下是false的。按照DHTML编程宝典中的描述,对于Defer属性是这样写的:
Using the attribute at design time can improve the download performance of a page because the browser does not need to parse and execute the script and can continue downloading and parsing the page instead.
也就是说:如果是编写脚本的时候加入defer属性,那么浏览器在下载脚本的时候就不必立即对其进行处理,而是继续对页面进行下载和解析,这样会提高下载的性能。
这样的情况有很多种。比如你定义了很多javascript变量,或者在引用文件(.inc)中写了很多的脚本需要处理,那不妨在这些脚本中加入defer属性,对性能的提高肯定有所帮助。
举例如下:
<script language="javascript" defer>
var object = new Object();
....
</script>
因为defer属性默认是为false的,那么在这里<script language="javascript" defer>显式声明defer属性后等同于<script language="javascript" defer=true>
声明了defer属性之后,需要判断是否有别的变量引用了defer脚本块中的变量,否则的话会导致脚本错误的产生。

我抬头仰望,星星给予仰望者光芒……

Javascript 相关文章推荐
jQuery Ajax 全解析
Feb 08 Javascript
Array.prototype 的泛型应用分析
Apr 30 Javascript
jQuery中after的两种用法实例
Jul 03 Javascript
IE8下Jquery获取select选中的值post到后台报错问题
Jul 02 Javascript
JavaScript中的6种运算符总结
Oct 16 Javascript
node.js中的console用法总结
Dec 15 Javascript
JS简单模拟触发按钮点击功能的方法
Nov 30 Javascript
浅谈struts1 &amp; jquery form 文件异步上传
May 25 jQuery
ExtJs异步无法向外传值和赋值的完美解决办法
Jun 14 Javascript
ionic3 懒加载
Aug 16 Javascript
详解webpack-dev-server使用http-proxy解决跨域问题
Jan 13 Javascript
微信小程序scroll-view实现字幕滚动
Jul 14 Javascript
jQuery Lightbox 图片展示插件使用说明
Apr 25 #Javascript
jQuery 表格工具集
Apr 25 #Javascript
基于JQuery.timer插件实现一个计时器
Apr 25 #Javascript
jquery+ashx无刷新GridView数据显示插件(实现分页、排序、过滤功能)
Apr 25 #Javascript
一个简单的jQuery插件制作 学习过程及实例
Apr 25 #Javascript
Javascript中的相等与不等运算
Apr 25 #Javascript
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
Apr 25 #Javascript
You might like
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
php截取中文字符串不乱码的方法
2013/12/25 PHP
thinkphp3.x中变量的获取和过滤方法详解
2016/05/20 PHP
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
php 一维数组的循环遍历实现代码
2017/04/10 PHP
PHP常见字符串操作函数与用法总结
2019/03/04 PHP
fireworks菜单生成器mm_menu.js在 IE 7.0 显示问题的解决方法
2009/10/20 Javascript
基于jquery实现的移入页面上空文本框时,让它变为焦点,移出清除焦点
2011/07/26 Javascript
jquery.fileEveryWhere.js 一个跨浏览器的file显示插件
2011/10/24 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
JavaScript小技巧整理篇(非常全)
2016/01/26 Javascript
实现JavaScript的组成----BOM和DOM详解
2016/05/18 Javascript
JavaScript中的冒泡排序法
2016/08/03 Javascript
BootStrap实现带有增删改查功能的表格(DEMO详解)
2016/10/26 Javascript
JS类的定义与使用方法深入探索
2016/11/26 Javascript
基于angular2 的 http服务封装的实例代码
2017/06/29 Javascript
JS轮播图实现简单代码
2021/02/19 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
通过实例解析jQ Ajax操作相关原理
2020/09/23 Javascript
[02:38]DOTA2超级联赛专访Loda 认为IG世界最强
2013/05/27 DOTA
[06:40]2014DOTA2西雅图国际邀请赛 DK战队巡礼
2014/07/07 DOTA
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
对于Python编程中一些重用与缩减的建议
2015/04/14 Python
python实现连接mongodb的方法
2015/05/08 Python
matlab中实现矩阵删除一行或一列的方法
2018/04/04 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
Html5 webRTC简单实现视频调用的示例代码
2020/09/23 HTML / CSS
微软中国官方旗舰店:销售Surface、Xbox One、笔记本电脑、Office
2018/07/23 全球购物
高级运动鞋:GREATS
2019/07/19 全球购物
巴西儿童时尚购物网站:Dinda
2019/08/14 全球购物
《七颗钻石》教学反思
2014/02/28 职场文书
地震捐款倡议书
2014/08/29 职场文书
培训感想范文
2015/08/07 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
php中配置文件保存修改操作 如config.php文件的读取修改等操作
2021/05/12 PHP