我只是开始使用kineticJS但是我在跟随之后遇到了一些错误 This教程
我不明白为什么,但我从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>
答案 0 :(得分:2)
问题在于舞台的实际创造。
而不是
var stage = new Kinetic.Stage(“container”,578,200);
我做了
var stage = new Kinetic.Stage({ 容器:“容器”, 宽度:578, 身高:200 });
答案 1 :(得分:2)
自3月https://github.com/ericdrowell/KineticJS/commit/7ced50f6943af544dbdfc95883ec41728db1d3bd
以来,Kinetic.Stage构造函数发生了变化因此,@ Gleeb自己的答案反映了KineticJS v4.0.x中的当前实践,而不是早期v3时代制作的那些文档/教程。
应该提出向后兼容性的拉取请求。比如
if(arguments.length>1){
config.container = arguments[0];
config.width = arguments[1];
config.height = arguments[2];
}
...在舞台构造函数中。
答案 2 :(得分: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>
找到更多教程和官方API文档