2

私はkineticJSを使い始めたばかりですが、 このチュートリアルに従った後にいくつかのエラーが発生します

理由はわかりませんが、KineticJSファイル内から例外が発生しています。

"Uncaught TypeError: cannot call method 'appendChild' of undefined".

ステップバイステップで実行すると、alert()その後停止することがわかります

var stage = new Kinetic.Stage( "rightSide"、578、200);

しかし、私は最も確実に持っています:

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

私も試しました:

<div id="rightSide">
</div>

同じエラーが発生します。

ありがとう。

編集:以下のコメントに応えて、これはチュートリアルからのコピーアンドペーストです:

</head>
<body>
<div id="container">
</div>
</body>
4

3 に答える 3

2

3月以降、Kinetic.Stageコンストラクターに変更があり ますhttps://github.com/ericdrowell/KineticJS/commit/7ced50f6943af544dbdfc95883ec41728db1d3bd

したがって、@ Gleeb自身の回答は、v3の初期に作成されたドキュメント/チュートリアルではなく、KineticJSv4.0.xの現在の慣行を反映しています。


下位互換性のためにプルリクエストを行う必要があります。

if(arguments.length>1){
 config.container =  arguments[0];
 config.width = arguments[1];
 config.height = arguments[2];
}

...ステージコンストラクター内。

于 2012-08-27T06:46:42.667 に答える
2

問題は、ステージの実際の作成にありました。

それ以外の

var stage = new Kinetic.Stage("コンテナ", 578, 200);

やった

var stage = new Kinetic.Stage({ コンテナ: "コンテナ", 幅: 578, 高さ: 200 });

于 2012-05-22T13:31:36.813 に答える
1

window.onload(例のように) イベントでスクリプトを実行しconsole.log()、変数/オブジェクトのデバッグに使用してみてください。

window.onload = function() {
  var stage = new Kinetic.Stage("rightSide", 578, 200);
  console.log('stage =', stage); // DEBUG
};

...そして ではdivなくを使用しcanvasます。

<div id="rightSide"></div>

http://www.kineticjs.com/docs/symbols/Kinetic.Stage.phpで、より多くのチュートリアルと公式の API ドキュメントを見つけることができます。

于 2012-05-22T13:29:03.207 に答える