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 相关文章推荐
JavaScript在XHTML中的用法详解
Apr 11 Javascript
js中for in的用法示例解析
Dec 25 Javascript
node.js中的fs.read方法使用说明
Dec 17 Javascript
ExtJs动态生成treepanel的Json格式
Jul 19 Javascript
高性能JavaScript循环语句和条件语句
Jan 20 Javascript
多种js图片预加载实现方式分享
Feb 19 Javascript
jQuery UI库中dialog对话框功能使用全解析
Apr 23 Javascript
12个非常实用的JavaScript小技巧【推荐】
May 18 Javascript
BootStrap轻松实现微信页面开发代码分享
Oct 21 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 Javascript
Vue中如何实现proxy代理
Apr 20 Javascript
JS removeAttribute()方法实现删除元素的某个属性
Jan 11 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
fleaphp rolesNameField bug解决方法
2011/04/23 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
Javascript模块模式分析
2008/05/16 Javascript
使用jquery修改表单的提交地址基本思路
2014/06/04 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
在javascript中创建对象的各种模式解析
2016/05/16 Javascript
jquery实现图片上传前本地预览
2017/04/28 jQuery
Bootstrap提示框效果的实例代码
2017/07/12 Javascript
详解用node搭建简单的静态资源管理器
2017/08/09 Javascript
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
详解vue-router数据加载与缓存使用总结
2018/10/29 Javascript
微信小程序之事件交互操作实例分析
2018/12/03 Javascript
ionic使用angularjs表单验证(模板验证)
2018/12/12 Javascript
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
Vue 使用formData方式向后台发送数据的实现
2019/04/14 Javascript
vue实现路由监听和参数监听
2019/10/29 Javascript
VUE 单页面使用 echart 窗口变化时的用法
2020/07/30 Javascript
Vue 使用typescript如何优雅的调用swagger API
2020/09/01 Javascript
JS实现无限轮播无倒退效果
2020/09/21 Javascript
解决Antd 里面的select 选择框联动触发的问题
2020/10/24 Javascript
jQuery实现动态操作table行
2020/11/23 jQuery
Python实现新浪博客备份的方法
2016/04/27 Python
python爬取NUS-WIDE数据库图片
2016/10/05 Python
numpy 计算两个数组重复程度的方法
2018/11/07 Python
解决PyCharm控制台输出乱码的问题
2019/01/16 Python
Python音频操作工具PyAudio上手教程详解
2019/06/26 Python
解决Django Static内容不能加载显示的问题
2019/07/28 Python
基于MATLAB和Python实现MFCC特征参数提取
2019/08/13 Python
Django返回HTML文件的实现方法
2020/09/17 Python
什么是虚拟内存?虚拟内存有什么优势?
2016/02/09 面试题
什么是规则表达式
2012/05/03 面试题
宠物店的创业计划书范文
2014/01/11 职场文书
蟋蟀的住宅教学反思
2014/04/26 职场文书
助学贷款贫困证明
2014/09/23 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书