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 UI 1.72 之datepicker
Dec 29 Javascript
jQuery点击tr实现checkbox选中的方法
Mar 19 Javascript
node.js Web应用框架Express入门指南
May 28 Javascript
JS判断字符串包含的方法
May 05 Javascript
基于JavaScript实现一定时间后去执行一个函数
Dec 14 Javascript
jstree创建无限分级树的方法【基于ajax动态创建子节点】
Oct 25 Javascript
javascript判断firebug是否开启的方法
Nov 23 Javascript
Vue2.0中三种常用传值方式(父传子、子传父、非父子组件传值)
Aug 16 Javascript
js限制输入框只能输入数字(onkeyup触发)
Sep 28 Javascript
jQuery-ui插件sortable实现自由拖动排序
Dec 01 jQuery
Vue使用NProgress进度条的方法
Sep 21 Javascript
JavaScript实现优先级队列
Dec 06 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
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
PHP生成压缩文件实例
2015/02/07 PHP
yii权限控制的方法(三种方法)
2015/12/28 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
IE与Firefox在JavaScript上的7个不同写法小结
2009/09/14 Javascript
js 操作符实例代码
2009/10/24 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
jQuery源码分析-01总体架构分析
2011/11/14 Javascript
JavaScript控制各种浏览器全屏模式的方法、属性和事件介绍
2014/04/03 Javascript
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
详解javascript函数的参数
2015/11/10 Javascript
jquery悬浮提示框完整实例
2016/01/13 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
第四章之BootStrap表单与图片
2016/04/25 Javascript
node.js实现博客小爬虫的实例代码
2016/10/08 Javascript
基于Javascript倒计时效果
2016/12/22 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
2017/09/12 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
Windows下python3.6.4安装教程
2018/07/31 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
详解Django-channels 实现WebSocket实例
2019/08/22 Python
python sorted函数原理解析及练习
2020/02/10 Python
基于python 取余问题(%)详解
2020/06/03 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
应届生简历中的自我评价
2014/01/13 职场文书
献爱心大型公益活动策划方案
2014/09/15 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
高老头读书笔记
2015/06/30 职场文书
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android
微信小程序实现轮播图指示器
2022/06/25 Javascript