try…catch语句
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
var txt = "";
function message(){
try{
addlert("Welcome guest!");
}catch(err){
txt = "本页有一个错误。\n\n";
txt += "错误描述: " + err.message + "\n\n";
txt += "点击确定继续。\n\n";
alert(txt);
}
}
</script>
</head>
<body>
<input type="button" value="查看消息" onclick="message()">
</body>
</html>
带有确认框的try…catch语句
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
var txt = "";
function message(){
try{
addlert("Welcome guest!");
}catch(err){
txt = "本页有一个错误。\n\n";
txt += "单击确定继续跳转\n";
txt += "或者单击取消返回\n\n";
if(confirm(txt)){
document.location.href = "//www.baidu.com/";
}
}
}
</script>
</head>
<body>
<input type="button" value="查看消息" onclick="message()">
</body>
</html>
onerror事件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
onerror = handleErr;
var txt = "";
function handleErr(msg, url, l){
txt = "该页面有一个错误\n\n";
txt += "错误: " + msg + "\n";
txt += "URL: " + url + "\n";
txt += "行: " + l + "\n\n";
txt += "点击确定继续。\n\n";
alert(txt);
return true;
}
function message(){
addlert("Welcome guest!");
}
</script>
</head>
<body>
<input type="button" value="查看消息" onclick="message()">
</body>
</html>