1.在使用HTML5的Canvas元素時,考慮到有些瀏覽器不支持canvas元素,或是不支持HTML5 Canvas API中的某些特性,開發人員最好提供一份替代代碼。 以下代碼展示如何在canvas中指定替代文本,當瀏覽器不支持canvas的時候會顯示這些替代內容: <canvas>Update ...
1.在使用HTML5的Canvas元素時,考慮到有些瀏覽器不支持canvas元素,或是不支持HTML5 Canvas API中的某些特性,開發人員最好提供一份替代代碼。
以下代碼展示如何在canvas中指定替代文本,當瀏覽器不支持canvas的時候會顯示這些替代內容:
<canvas>Update your browser to enjoy canvas!</canvas>
2.檢測瀏覽器的支持情況
在創建HTML5 canvas元素之前,首先要確保瀏覽器能夠支持它。可以使用一下代碼檢測:
Test02.js
1 window.onload=function(){ 2 try{ 3 document.createElement("canvas").getContext("2d"); 4 document.getElementById("support").innerHTML= 5 "HTML5 Canvas is supported in your browser."; 6 } 7 catch(e){ 8 document.getElementById("support").innerHTML= 9 "HTML5 Canvas is not supported in your browser."; 10 } 11 }
Test02.html
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Test02</title> 6 <script type="text/javascript" src="Test02.js"></script> 7 </head> 8 <body> 9 <div id="support"></div> 10 </body> 11 </html>
註:
(1)
在JavaScript中,可以使用try…catch…finally語句來執行例外處理,即通過它來捕捉錯誤發生後導致的例外或者執行throw語句產生的例外。它的基本語法如下:
try {
} catch(error) {
// 此處是負責例外處理的語句
} finally {
// 此處是出口語句
} 上面的代碼試圖創建一個canvas對象,並且獲取其上下文。如果發生錯誤,則可以捕獲錯誤,進而得知瀏覽器不支持canvas。 另: 在Javascript代碼中,如果不使用 window.onload 則會出現以下錯誤: TypeError: document.getElementById(...) is null。 這是因為: 網頁中的javaScript腳本代碼往往需要在文檔載入完成後才能夠去執行,否則可能導致無法獲取對象的情況,為了避免這種情況的發生,可以使用以下兩種方式:
一.將腳本代碼放在網頁的底端,這樣在運行腳本代碼的時候,可以確保要操作的對象已經載入完成。
二.通過window.onload來執行腳本代碼。