<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="分析Object #<HTMLCanvasElement> 的drawImage没有作用的原因" id="card1">
<p> 游客</p><p>
标题:分析Object #&lt;HTMLCanvasElement&gt; 的drawImage没有作用的原因<br/>
正文:<br/>
学canvas时候发现了这个问题，情况分析：1：google版本不支持canvas的drawImage方法，2：传入参数不正确导致浏览器报错（是由于image加载是异步的，可能没加载完成就开始执行相应的代码，结果资源获取不到）。3： var canvas = document.getElementById('canvas');<br/>      var context= canvas.getContext('2d');有可能你没有获取2D的上下文，晕，我就是这种，至于第二种情况下面有解答方法。解决方法：使得图片加载完成后才去运行相关代码改进后的代码如下(这是网上的代码，还可以)：Js代码    var context=my_canvas.getContext(&quot;2d&quot;);      // var footprint_img=document.getElementById(&quot;footprint&quot;);      // var footprint_img=new Image();      // footprint_img.src=&quot;footprint.jpg&quot;;      preImage(&quot;footprint.jpg&quot;,function(){          context.drawImage(this,10,10,20,20);      }<br/>function preImage(url,callback){  //图片的预下载       var img = new Image(); //创建一个Image<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1116&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1116&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1116&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1116&amp;Page=2">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=1116">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=1116">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>