为了账号安全,请及时绑定邮箱和手机立即绑定

用canvas标签时,运行代码提示 Uncaught TypeError: Cannot read property 'getContext' of undefined,怎么回事?

<script>

  var total = 17;

  var zWin = $(window);

  var render = function (){

      var tmpl = ""; //防止字符串前出现undefined

      var padding = 2;

      var winWidth = zWin.width();

      var picWidth = Math.floor((winWidth-padding*3)/4);

     

      for(i=1;i<=total;i++) {

           var p = padding;

            var imgSrc = "img/"+i+".jpg";

           if(i%4==1){

            p = 0;

           }


          tmpl += '<li data-id="'+i+'" class="animated bounceIn" style="width:'+picWidth+'px;height:'+picWidth+'px;padding-left:'+p+'px;padding-top:'+padding+'px"><canvas id="cvs_'+i+'"></canvas></li>';

          var img = new Image();

          img.index = i;

          img.onload = function(){

          c = $('cvs_'+this.index)[0];

          var cvs=c.getContext("2d");

          cvs.width = this.width;

          cvs.height = this.height;

          cvs.drawImage(this,0,0);



        }

        img.src = imgSrc;

          }

      $("#container").html(tmpl);


    }

    render();


</script>


正在回答

2 回答

楼上正解

0 回复 有任何疑惑可以回复我~

在申明变量 C 的时候,要用 var c =  $('cvs_'+this.index)[0];

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
移动端的WEB相册
  • 参与学习       47966    人
  • 解答问题       217    个

本课程通过一个移动端相册案例,带您一步步了解移动端框架

进入课程

用canvas标签时,运行代码提示 Uncaught TypeError: Cannot read property 'getContext' of undefined,怎么回事?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信