jQuery加载完成事件 $(function(){ })的全局异常拦截
2024-08-29 01:38:33
通常我们在页面加载完成的时候要写入一些功能脚本,如:
$(function(){/*脚本 - 1*/
console.log('start');
})
$(function(){/*脚本 - 2*/
throw new Error(123);
})
$(function(){/*脚本 - 3*/
console.log('end');
})
但运行到‘脚本 - 2’时程序会被中断,导致后续脚本无法执行,在项目中这往往不是我们想要的;有异常发生时,我们可以捕获并打印,但脚本依然进行执行,改造如下:
$.extend(jQuery.fn, {// 重写ready方法,截获异常
ready: function(fn) {
// Add the callback
var fun = function(){
try {
fn.apply(this,arguments);
} catch (e) { console.trace(e); }
}
jQuery.ready.promise().done(fun); return this;
}
});
$(function(){
console.log('start');
})
$(function(){
throw new Error(123);
})
$(function(){
console.log('end');
})
chrome的测试结果:
最新文章
- 从零开始山寨Caffe·壹:仰望星空与脚踏实地
- Javascript原型模式总结梳理
- JavaWeb学习系列——第一个JavaWeb程序
- 关于js中的回收机制,通俗版
- C#写文本日志帮助类(支持多线程)
- HDU 2063 过山车(二分匹配入门)
- 理解C++中函数的返回
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(39)-在线人数统计探讨
- qt 自动完成LineEdit
- 菜鸟学习SSH(二)——Struts国际化
- DotNetCore跨平台~服务总线_事件总线的重新设计
- String Byte 互转
- git异常
- 利用C&C漏洞来查看恶意软件Dridex的操作流程
- mysql监控利器mysqlmtop部署安装
- 【总结】 NOIp2018考时经历记
- 小白初识 - 归并排序(MergeSort)
- [转]字符串相似度算法(编辑距离算法 Levenshtein Distance)
- 转载:Service Mesh:重塑微服务市场--敖小剑
- Codeforces Round #482 (Div. 2) :B - Treasure Hunt
热门文章
- 在window下搭建Vue.Js开发环境(转)
- PHP 在 Mac 的安装之路
- style标签下的CSS代码的显示与实时编辑
- poj1308(并查集)
- ceph 文件系统(cephfs) -- 初体验
- TOJ3097: 单词后缀 (字典树 or map瞎搞)
- c#的Boolean.Parse用法
- Chrome格式化JavaScript代码
- Ionic3错误: StaticInjectorError[HttpModule]: NullInjectorError: No provider for HttpModule!
- Djang的model创建的字段和参数复习