Javascript 如何调整画布的大小

Javascript 如何调整画布的大小,javascript,jquery,css,html,canvas,Javascript,Jquery,Css,Html,Canvas,我画了一个画布与图像,我想当浏览器调整大小,这个图像可以与浏览器。这是我的密码 函数绘制画布{ var img=新图像; var canvas=$'canvas'[0]; img.crossOrigin='匿名'; img.onload=函数{ var ctx=canvas.getContext'2d'; ctx.drawImagethis,0,0,$'canvas\u panel'。宽度,$'canvas\u panel'。高度; }; img.src=http://dicprj.moe/m

我画了一个画布与图像,我想当浏览器调整大小,这个图像可以与浏览器。这是我的密码

函数绘制画布{ var img=新图像; var canvas=$'canvas'[0]; img.crossOrigin='匿名'; img.onload=函数{ var ctx=canvas.getContext'2d'; ctx.drawImagethis,0,0,$'canvas\u panel'。宽度,$'canvas\u panel'。高度; }; img.src=http://dicprj.moe/media/mathimages/en/arithmetic_kinder_counting_money_01_10.png'; } $document.readyfunction{ 画油画; }; $window.resizefunction{ $'canvas\u panel>canvas'。每个函数i,v{ 如果$this.height!=$'canvas_panel.height | $this.width!=$canvas\u panel.width { $this.attr{ '高度':$'canvas_panel'。高度+'px', '宽度':$'canvas_panel'。宽度+'px' }; } }; }; 绘画
无论何时调整画布的大小,都需要重新绘制它。因此,称之为draw_canvas;调整大小后的函数。新的代码将成为

$(window).resize(function() {
  $('#canvas_panel > canvas').each(function(i,v) {
    if($(this).height() != $('#canvas_panel').height() || 
      $(this).width() !=   $('#canvas_panel').width()) 
    {
      $(this).attr({
        'height' : $('#canvas_panel').height() + 'px',
        'width'  : $('#canvas_panel').width() + 'px'    
      });
      draw_canvas();
    }
  });
});

css可以解决此问题,只需将宽度/高度css设置为画布:

帆布{ 宽度:100%; 身高:100%;
}draw_canvas函数的内容?我不太理解你的问题,你可以调用draw_canvas;函数,而不是编写新代码。我让它在@OMGTran上处理不同的图像。请不要说我解决了我的问题,而没有发布您的解决方案作为答案。没有给出你的答案只会造成混乱,没有答案的死胡同。如果Daan Meijer的回答能帮助你找到解决方案,那么除了发布你的自我回答外,最好还是更新他的回答。