excanvas用来支持ie6使用canvas画布。(现在叫explorercanvas)
引入excanvas.js以后,在ie下,文档中的canvas就可以用了,但是如果是通过createElement方法创建的就不行了
var canvas=document.createElement(”canvas”); if(canvas.getContext){ alert(”support getContext()”); }
var canvas=document.createElement(”canvas”); if(canvas.getContext){ alert(”support getContext()”); }
因为加载并执行excanvas.js这个脚本代码的时候,G_vmlCanvasManager_.init();这句语句遍历了页面中所有的canvas元素,然后初始化这些元素。
由于js的函数中,如果一个变量不通过var来定义,那么就会把这个变量当作一个全局变量。
这个方法单独对某个canvas初始化,注意是文档加载完成后才操作。
$(function(){ var canvas=document.createElement(”canvas”); document.body.appendChild(canvas); if($.browser.msie){ canvas=window.G_vmlCanvasManager.initElement(canvas); } if(canvas.getContext){alert(”support”);} });
$(function(){ var canvas=document.createElement(”canvas”); document.body.appendChild(canvas); if($.browser.msie){ canvas=window.G_vmlCanvasManager.initElement(canvas); } if(canvas.getContext){alert(”support”);} });
方法二第二种方法对整个document再初始化一次。
var canvas=document.createElement(”canvas”); document.body.appendChild(canvas); if($.browser.msie){ G_vmlCanvasManager.init_(document); } if(canvas.getContext){alert(”support”);} });
var canvas=document.createElement(”canvas”); document.body.appendChild(canvas); if($.browser.msie){ G_vmlCanvasManager.init_(document); } if(canvas.getContext){alert(”support”);} });
另外发现Canvas这玩意挺好玩的~~推荐一个中文教程:canvas中文教程