如何用HTML5Canvas测试浏览器是否支持Canvas-创新互联

本篇内容介绍了“如何用HTML5 Canvas测试浏览器是否支持Canvas”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

石屏网站建设公司创新互联,石屏网站设计制作,有大型网站制作公司丰富经验。已为石屏近千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的石屏做网站的公司定做!

在获取HTML页面上Canvas元素的引用后,我们需要测试一下该元素是否包含“上下文”(context)。Canvas的上下文指的是由浏览器定义的用于绘画的平面。简单地说,如果上下文不存在的话,Canvas也就名存实亡了。测试浏览器是否支持Canvas有好几种方法。第一种方法是检查HTML页面中Canvas元素的getContext方法是否存在:



代码如下:

if (!theCanvas || !theCanvas.getContext) {
   return;
}



事实上,上述代码测试了两点:其一,测试了theCanvas是否为false(如果id不存在的话,document.getElementById()会返回false);其二,测试了getContext()函数是否存在。

在上述代码中,如果测试失败,那么return语句执行,程序终止。

另一种方法是创建一个专门用于判断Canvas是否得以支持的函数,而在该函数中,实时生成一个Canvas元素来进行这种判断 — 这种方法很流行,Mark Pilgrim在他的HTML5网站http://diveintohtml5.org中提到了这种方案:



代码如下:

function canvasSupport() {
   return !!document.createElement('canvas').getContext;
}
function canvasApp() {
   if (!canvasSupport()) {
       return;
   }
}



我们最钟爱的方法是使用modernizr.js库(在http://www.modernizr.com中可以找到)。Modernizr是一个简单易用的轻量级JavaScript库,用于测试各种Web技术的兼容性 — 它提供了很多静态的Boolean方法,可以用来测试当前Canvas是否得到支持。

在HTML页面中引入modernizr很简单,从http://www.modernizr.com上下载代码,然后在HTML页面中包含这个外部js文件即可:



代码如下:



使用Modernizr测试Canvas的支持性,只需将上面的canvasSupport函数改动一下就可以了:



代码如下:

function canvasSupport() {
   return Modernizr.canvas;
}


“如何用HTML5 Canvas测试浏览器是否支持Canvas”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网页名称:如何用HTML5Canvas测试浏览器是否支持Canvas-创新互联
链接URL:http://scyanting.com/article/dschgh.html