javascript容错处理代码(屏蔽js错误)


Posted in Javascript onJanuary 20, 2017

有时候大家来浏览网页的时候发现IE浏览器左下角总有个黄色错误标志,有时候更是直接弹出错误无法继续浏览页面,这样对于网站的正规性与权威性发展不利。

国外银行页面就是因为这样的错误,导致用户大量流失不敢用这个银行的网上银行等导致损失惨重。

所以一个想要在用户体验与公司实力上都是不容出现的错误,就是不影响使用也不能让用户反感,三水点靠木一直致力于为大家提高更好的代码,所以这里我们将会大家整理一些常用的代码,使用方法什么,希望大家以后能越来越支持我们,让我们共同发展。

第一种:三水点靠木在用的

<SCRIPT language=javascript> 
<!-- 
window.onerror=function(){return true;} 
// --> 
</SCRIPT>

使用方法:把以上代码加到你出错网页的head区域就可以了。

第二种:针对的是有时候因为一些脚本错误的,导致页面无法继续浏览,这个问题是非常严重的,用户的大量流失,或根本无法查看你的网站内日

这个不是简单的脚本错误的问题了,主要是代码作者没有考虑完善,一定要好好的修改下, 不过如果你真的不会,那就用这样的代码吧

try...catch 可以测试代码中的错误。try 部分包含需要运行的代码,而 catch 部分包含错误发生时运行的代码。

语法:

复制代码 代码如下:

try 
{ 
//在此运行代码 
} 
catch(err) 
{ 
//在此处理错误 
}

注意:try...catch 使用小写字母。大写字母会出错。

实例 1

下面的例子原本用在用户点击按钮时显示 "Welcome guest!" 这个消息。不过 message() 函数中的 alert() 被误写为 adddlert()。这时错误发生了:

<html> 
<head> 
<script type="text/javascript"> 
function message() 
{ 
adddlert("Welcome guest!") 
} 
</script> 
</head> 
<body> 
<input type="button" value="View message" onclick="message()" /> 
</body> 
</html>

我们可以添加 try...catch 语句,这样当错误发生时可以采取更适当的措施。

下面的例子用 try...catch 语句重新修改了脚本。由于误写了 alert(),所以错误发生了。不过这一次,catch 部分捕获到了错误,并用一段准备好的代码来处理这个错误。这段代码会显示一个自定义的出错信息来告知用户所发生的事情。

<html> 
<head> 
<script type="text/javascript"> 
var txt="" 
function message() 
{ 
try 
{ 
adddlert("Welcome guest!") 
} 
catch(err) 
{ 
txt="此页面存在一个错误。\n\n" 
txt+="错误描述: " + err.description + "\n\n" 
txt+="点击OK继续。\n\n" 
alert(txt) 
} 
} 
</script> 
</head> 
<body> 
<input type="button" value="View message" onclick="message()" /> 
</body> 
</html>

实例 2

下一个例子会显示一个确认框,让用户来选择在发生错误时点击确定按钮来继续浏览网页,还是点击取消按钮来回到首页。如果 confirm 方法的返回值为 false,代码会把用户重定向到其他的页面。如果 confirm 方法的返回值为 true,那么代码什么也不会做。

<html> 
<head> 
<script type="text/javascript"> 
var txt="" 
function message() 
{ 
try 
{ 
adddlert("Welcome guest!") 
} 
catch(err) 
{ 
txt="There was an error on this page.\n\n" 
txt+="Click OK to continue viewing this page,\n" 
txt+="or Cancel to return to the home page.\n\n" 
if(!confirm(txt)) 
{ 
document.location.href="http://www.w3school.com.cn/" 
} 
} 
} 
</script> 
</head> 
<body> 
<input type="button" value="View message" onclick="message()" /> 
</body> 
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
javascript 日期时间函数(经典+完善+实用)
May 27 Javascript
AngularJS身份验证的方法
Feb 17 Javascript
js实现可键盘控制的简单抽奖程序
Jul 13 Javascript
浅谈Angular的$q, defer, promise
Dec 20 Javascript
jquery 实时监听输入框值变化的完美方法(必看)
Jan 26 Javascript
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 jQuery
MvcPager分页控件 适用于Bootstrap
Jun 03 Javascript
JS 中document.write()的用法和清空的原因浅析
Dec 04 Javascript
JavaScript引用类型Date常见用法实例分析
Aug 08 Javascript
解决vue select当前value没有更新到vue对象属性的问题
Aug 30 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
Aug 30 Javascript
不依任何赖第三方,单纯用vue实现Tree 树形控件的案例
Sep 21 Javascript
关于AngularJs数据的本地存储详解
Jan 20 #Javascript
html5 canvas 详细使用教程
Jan 20 #Javascript
canvas绘制万花筒效果(代码分享)
Jan 20 #Javascript
原生js实现网页顶部自动下拉/收缩广告效果
Jan 20 #Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
Jan 20 #Javascript
轻松理解Javascript变量的相关问题
Jan 20 #Javascript
js+css3实现旋转效果
Jan 20 #Javascript
You might like
PHP判断文件是否存在、是否可读、目录是否存在的代码
2012/10/03 PHP
php的数组与字符串的转换函数整理汇总
2013/07/18 PHP
php实现网站留言板功能
2015/11/04 PHP
PHP执行shell脚本运行程序不产生core文件的方法
2016/12/28 PHP
php常用日期时间函数实例小结
2019/07/04 PHP
laravel 实现划分admin和home 模块分组
2019/10/15 PHP
Laravel 之url参数,获取路由参数的例子
2019/10/21 PHP
jquery 弹出层实现代码
2009/10/30 Javascript
将list转换为json失败的原因
2013/12/17 Javascript
jQuery中innerWidth()方法用法实例
2015/01/19 Javascript
jQuery创建自定义的选择器用以选择高度大于100的超链接实例
2015/03/18 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
详解AngularJs中$resource和restfu服务端数据交互
2016/09/21 Javascript
js获取腾讯视频ID的方法
2016/10/03 Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
2017/05/05 jQuery
JavaScript严格模式下关于this的几种指向详解
2017/07/12 Javascript
JavaScript阻止表单提交方法(附代码)
2017/08/15 Javascript
jQuery插件artDialog.js使用与关闭方法示例
2017/10/09 jQuery
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
Node.js搭建WEB服务器的示例代码
2018/08/15 Javascript
layer弹出层父子页面事件相互调用方法
2018/08/17 Javascript
微信小程序学习笔记之函数定义、页面渲染图文详解
2019/03/28 Javascript
Layui实现数据表格默认全部显示(不要分页)
2019/10/26 Javascript
vue中音频wavesurfer.js的使用方法
2020/02/20 Vue.js
js实现Element中input组件的部分功能并封装成组件(实例代码)
2021/03/02 Javascript
[01:11:46]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第一场 2月23日
2021/03/11 DOTA
python网络编程之数据传输UDP实例分析
2015/05/20 Python
解决Django中调用keras的模型出现的问题
2019/08/07 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
CSS3 :nth-child()伪类选择器实现奇偶行显示不同样式
2013/11/05 HTML / CSS
文科教师毕业的自我评价
2014/01/16 职场文书
民族团结先进个人事迹材料
2014/06/02 职场文书
饭店服务员岗位职责
2015/02/09 职场文书
正规借条模板
2015/05/26 职场文书
情人节单身感言
2015/08/03 职场文书
MySQL创建管理KEY分区
2022/04/13 MySQL