canvas加载图片需要二次刷新的问题

如题:此问题我也经在百度问问上进行了解答。https://zhidao.baidu.com/question/1048045241465845579.html

好吧,难怪现在百度那么坑人,理论水军专家。下面是js代码,亲测有用。

//canvas加载要修改的图片
function loadSketch(){
   var c=document.getElementById("canvas");
   cxt=c.getContext("2d");
   var img=new Image();
    img.src=$("#sketchPath").val();//html页面隐藏存放的要加载的图片路径

    if(img.complete) { // 如果图片已经存在于浏览器缓存,直接调用回调函数
        cxt.drawImage(img,0,0);
        return; // 直接返回,不用再处理onload事件
    }
    img.onload=function(){
        cxt.drawImage(img,0,0);
    };
}
原文地址:https://www.cnblogs.com/zeussbook/p/10184785.html