2

このコードの何が問題になっていますか?:S..私のキャンバスは空のままです。画像のURLが正しく、画像が読み込まれます。

これは私のengine.jsファイルです:

var canvas;
var stage;

function init()
{
    canvas = document.getElementById("canvas");
    stage  = new Stage(canvas);

    playerImg        = new Image();
    playerImg.src    = 'img/player/walkingbl.png';
    playerImg.onload = onPlayerLoaded;

    Ticker.setFPS(30);
    Ticker.addListener(window);
}

function tick()
{
    stage.update();
}

function onPlayerLoaded()
{
    console.log(playerImg);
    player      = new Bitmap(playerImg);
    player.x    = 300;
    player.y    = 450;

    stage.addChild(player);

    console.log('Player added to stage');
}

$(document).ready(function(){

init();

});

そしてこれは私のindex.htmlファイルです:

<!DOCTYPE html>
<html>
<head>
          <title>Game Engine</title>
          <link rel="stylesheet" href="css/main.css" />
</head>
<body>
      <div id='container'>
           <canvas id='#canvas' width='1000' height='350'></canvas>
      </div>

            <script src="js/jquery.js"></script>
            <script src="js/easel.js"></script>
        <script src='js/engine.js'></script>
</body>

私はeasel.js全体に不慣れで、Flashやactionscriptで何もしませんでした。私は本質的にPHP開発者なので、これは私にとってかなり大きな移行です。ドキュメント/チュートリアル/例が不足しているため、easel.jsの使用方法を学ぶのは非常に困難です。ですから、私がチェックアウトするためのポインタやリソースがあれば。シェアしてください!

4

1 に答える 1

5

この行は間違っています:

<canvas id='#canvas' width='1000' height='350'></canvas>

IDには#は必要ありません。正しい行は次のとおりです。

<canvas id='canvas' width='1000' height='350'></canvas>

ただし、「canvas」という単語はタグと混同される可能性があるため、識別子としては使用しません。より良い使用法:

<canvas id='mycanvas' width='1000' height='350'></canvas>

JSコードを変更します。

canvas = document.getElementById("mycanvas");
于 2012-03-29T15:48:11.117 に答える