好的,我正在尝试将javascript放在单独的源文件中。这是一个新手问题,但是我在layer.add(imageObj)
上收到“未定义”错误。
我猜这是因为window.onLoad
引起的,但我没有找到立即的答案。
<html>
<head>
<link rel="stylesheet" type="text/css" media="screen" href="index.css">
<script type="text/javascript" src="js/kinetic-v5.1.0.min.js"></script>
<script type="text/javascript" src="js/game.js" defer="defer"></script>
</head>
<body>
<div id="board"></div>
</body>
JavaScript:
window.onload = function(){
var stage = new Kinetic.Stage({
container: 'board'
});
var layer = new Kinetic.Layer();
var imageObj = new Image();
imageObj.onload = function() {
var image = new Kinetic.Image({
x: 0,
y: 0,
image: imageObj,
width: 100,
height: 100
});
};
imageObj.src = 'resources/map.jpg';
layer.add(imageObj);
stage.add(layer);
};
最佳答案
您需要添加到图层Kinetic.Image
实例(源中的image
)而不是imageObj
。您可以在onload
函数中执行此操作。参见:http://jsbin.com/buroyi/2/edit