onerror事件處理函式返回false或者true的作用

admin發表於2017-03-31

關於此事件的更多用法這裡就不多介紹了,具體可以參閱javascript的onerror事件用法介紹一章節。

本章節單獨介紹一下,onerror事件處理函式返回true或者false的作用,希望能夠給需要的朋友帶來幫助。

下面看一段程式碼例項:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
div{font-size:12px;}
</style>
<script type="text/javascript">
window.onerror=handleErr
var txt=""
function handleErr(msg,url,l){
  var odiv=document.getElementById("show");
  odiv.innerHTML=txt;
  txt="本頁中存在錯誤。<br>";
  txt+="錯誤:" + msg + "<br>";
  txt+="URL: " + url + "<br>";
  txt+="行:" + l + "<br>";
  txt+="點選“確定”繼續。<br>";
  odiv.innerHTML=txt;  return true;
}
  
function message(){
  done("螞蟻部落歡迎您");
}
window.onload=function(){
  var obt=document.getElementById("bt");
  obt.onclick=function(){
    message();
  }
}
</script>
</head>
<body>
<div id="show"></div>
<input type="button" id="bt" value="檢視效果"/>
</body>
</html>

在上面的程式碼中,我們可以看到事件處理函式最後有return true一條語句,下面介紹一下它的作用。

如果沒有return true ,那麼預設返回值就是false,將會在控制檯中顯示錯誤訊息,如果返回true,則不會顯示此錯誤訊息。當然在不同的瀏覽器中顯示錯誤訊息的形式會有所不同,在低版本的IE中,會顯示如下錯誤提示:

a:3:{s:3:\"pic\";s:43:\"portal/201703/31/014537cfgows6660oojfnm.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

在谷歌瀏覽器中,則會在控制檯顯示錯誤資訊,如下圖:

a:3:{s:3:\"pic\";s:43:\"portal/201703/31/014609m0qoq00sqwqqkhjj.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

其他瀏覽器就不一一列舉了。

相關文章