jQuery没有改变宽度

时间:2013-12-08 03:15:57

标签: javascript jquery

这是我的代码,我觉得我已经尝试了一切,但没有任何影响画布。我一直在研究最后一小时,我尝试了简单的javascript,但由于某种原因,画布没有改变。相同的代码适用于不同页面上的iframe。

<canvas id="canvas" height="400" width="400"></canvas>
<script type="text/javascript">
$(document).ready(function () {
        $("#canvas").attr('width', 800);
    });
</script>

我想要做的是设置宽度等于窗口大小减去100像素,但是现在我把它设置为800,所以我可以试着弄清楚为什么这不起作用。

2 个答案:

答案 0 :(得分:6)

一旦调整了画布,就必须重绘画布。首先,使用getContext('2d')获取2d上下文,然后在上下文中调用必要的函数,很可能是strokeRect()

var myCanvas = $('#canvas').attr('width',800);
var myContext = myCanvas.getContext('2d');
myContext.strokeRect(0,0,myCanvas.attr('width'),myCanvas.attr('height'));

我认为这是正确的,但可能存在一些代码错误,希望你能得到这个想法。

答案 1 :(得分:1)

这个怎么样:

#canvas {
    width:400px;
    height:400px;
}

<canvas id="canvas"></canvas>

<script type="text/javascript">
$(document).ready(function () {
        $("#canvas").css('width','800px');
    });
</script>