【javascript】canvasにimg画像(アニメーションgif)を重ねて中央寄せする
たいした話じゃないけど、やりたかったことは
canvasへの描画処理を開始する前の事前処理(準備)中にローディング画像みたいのを出したかったのですが、
canvasにグルグル回るアニメーションgifを描画すると1枚目の静止画となってしまうのでcanvasとimgタグを重ねて対応しました
<div id="content"></div>
<script>
// canvasと画像のサイズ
var width_canvas = 320,
height_canvas = 180;
var width_image = 50;
var height_image = 30;
// canvas生成
var canvas = document.createElement("canvas");
canvas.width = width_canvas;
canvas.height = height_canvas;
canvas.style.position = "relative";
// img生成して画像読み込み
var image = new Image();
image.id = "img";
image.src = "//example.com/img.gif";
image.style.position = "absolute";
image.style.left = canvas.width/2 - width_image/2;
image.style.top = canvas.height/2 - height_image/2;
image.style.width = width_image;
image.style.height = height_image;
// canvasとimgを画面に追加
var content = document.getElementById("content");
content.appendChild(canvas);
content.appendChild(image);
</script>実際にはcanvasの準備ができたら
image.style.display = "none"みたいな感じで非表示にする処理も必要になります
以上です