キャンバスにかんする謎

キャンバスを使うためには

var canvas = document.getElementById('canvas');
// CanvasRenderingContext2D を作成
var ctx = canvas.getContext("2d");

と言う風にしてからいろいろいじるんだけど,


ここで問題が。

var canvas = document.getElementById('canvas');
canvas.setAttribute("width",  100);
canvas.setAttribute("height", 50);
var ctx = canvas.getContext("2d");

というふうに canvas 要素の幅,高さを設定すると問題ないんだけど,

var canvas = document.getElementById('canvas');
var ctx = canvas.getContext("2d");
canvas.setAttribute("width",  100);
canvas.setAttribute("height", 50);

というふうに,getContext() で CanvasRenderingContext2D を作成した後では幅,高さの変更ができない。 (Opera 限定)。 Firefox なら問題ない。


はてさて。