ie浏览器支持canvas吗,canvas测试是啥
本文翻译自Steve Fulton Jeff Fulton html 5 canvas,第1章“测试查看浏览器何时支持canvas”。
获取了HTML页面上Canvas元素的引用后,我们需要测试该元素是否包含“上下文”。画布的上下文是指浏览器为绘画定义的平面。简单来说,如果上下文不存在,Canvas就名存实亡了。有几种方法可以测试浏览器是否支持Canvas。第一种方法是检查HTML页面中Canvas元素的getContext方法是否存在:复制代码如下:
如果(!theCanvas !theCanvas.getContext) {
返回;
}
其实上面的代码测试了两件事:一是测试theCanvas是否为false(如果id不存在,document.getElementById()会返回false);其次,测试getContext()函数的存在性。
在上面的代码中,如果测试失败,则执行return语句,程序终止。
另一种方法是创建一个专门用来判断是否支持Canvas的函数,在这个函数中实时生成一个Canvas元素来做出这个判断——这种方法非常流行,Mark Pilgrim在他的HTML5网站http://diveintohtml5.org中提到了这个方案:复制代码如下:
函数canvasSupport() {
回归!document.createElement(canvas )。getContext
}
函数canvasApp() {
如果(!canvasSupport()) {
返回;
}
}
我们最喜欢的方法是使用modernizr.js库(可以在http://www.modernizr.com找到)。Modernizr是一个简单易用的轻量级JavaScript库,用于测试各种Web技术的兼容性——它提供了许多静态布尔方法,可以用来测试当前画布是否受支持。
将modernizr引入HTML页面非常简单。从http://www.modernizr.com下载代码,然后将这个外部js文件包含在HTML页面中:如下复制代码:
script src= modernizr-1.6 . min . js /script
使用Modernizr测试Canvas的支持,只需更改上面的canvasSupport函数:复制代码如下:
函数canvasSupport() {
返回Modernizr.canvas
}
我们认为使用Modernizr.js是判断浏览器是否支持Canvas的最佳方式。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。