怎么检测浏览器是否支持HTML5?

html-css06

怎么检测浏览器是否支持HTML5?,第1张

利用HTML5新标签对象的方法来进行检测,比如Canvas对象的getContext()、Video对象的canPlayType等。如果浏览器支持HTML5,则返回相应的期望值(返回函数体,布尔值为true),否则无法获得期望值(返回undefined,布尔值为false)。

Canvas对象的getContext

// 方法一

/**

 * [supportHtml5 言成科技&HTML5学堂]

 * @return {[type]} [description]

 */

function supportCanvas() {

    return (typeof document.createElement('canvas').getContext === "function")

}

console.log(supportCanvas())

Video对象的canPlayType

// 方法二

/*

 * [supportsVideo 言成科技&HTML5学堂]

 * @return {[type]} [description]

 */

function supportVideo() {

  return !!document.createElement('video').canPlayType

}

console.log(supportVideo())

在创建HTML5 canvas元素之前,首先要确保浏览器能够支持它。如果不支持,就要为那些古董级浏览器提供一些替代文字。下面的代码就是检测浏览器支持情况的一种方法。try { document.createElement("canvas").getContext("2d")document.getElementById("support").innerHTML = "HTML5 Canvas is supported in your browser."} catch (e) { } 上面的代码试图创建一个canvas对象,并且获取其上下文。如果发生错误,则可以捕获错误,进而得知该浏览器不支持canvas。页面中预先放入了ID为support的元素,通过以适当的信息更新该元素的内容,可以反映出浏览器的支持情况。 以上示例代码能判断浏览器是否支持canvas元素,但不会判断具体支持canvas的哪些特性。这个时候,示例中使用的API已经很稳定并且各浏览器也都提供了很好的支持,所以通常不必担心这个问题。 此外,希望开发人员能够像如上代码一样为canvas元素提供备用显示内容。

方法一:

if ( typeof(Worker) !== "undefined" ) {

alert("支持html5")

} else {

alert("不支持html5")

}

方法二:

if ( window.applicationCache ) {

    alert("支持html5")

} else {

    alert("不支持html5")

}