因此,我试图尽可能简化我的代码,基本上创建了两个阶段,两个可拖动图层,每个图层都带有一个图像。 (我试图创建一个的jsfiddle但似乎可拖动根本不工作都在那里)当你按下将一个图像(平移)放在另一个图像(平移)上时动力学中断
<html>
<body>
<div id="view1" style="float:left;"></div>
<div style="float:left;">--</div>
<div id="view2" style="float:left;"></div>
</body>
<script type='text/javascript' src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.3.3.min.js"></script>
<script>
for (var i = 0; i < 2; i++) {
var divName = 'view' + (i + 1);
var stage = new Kinetic.Stage({
container: divName,
width: 200,
height: 200
});
var kineticLayer = new Kinetic.Layer();
kineticLayer.setDraggable("draggable");
stage.add(kineticLayer);
var image = new Image();
image.onload = imageOnLoad;
image.kineticLayer=kineticLayer;
image.src = 'http://2.bp.blogspot.com/-lwBsEScRW_U/T-Hwz0-CVGI/AAAAAAAAKjY/2RC9pFcXRsE/s1600/Muppets.JPG';
}
function imageOnLoad() {
this.kineticLayer.removeChildren();
var kineticImage = new Kinetic.Image({
image: this
});
this.kineticLayer.add(kineticImage);
this.kineticLayer.draw();
}
</script>
</html>
,并保存图像上,并在其周围平移确定移动它,但是当你移动光标在其他图像的顶部(同时按住),与错误的动能突破“遗漏的类型错误:无法读取属性‘X’的未定义”
编辑:的jsfiddle jsfiddle.net/LFeDg/ THX到EliteOctagon
编辑:这个'错误'只会发生在铬开发工具打开!
我需要平移操作来保持工作状态,只要光标保持在任意位置(我不需要在这种情况下拖放),我该如何解决这个问题?这是一个动力学错误?
谢谢!
貌似错误。我认为kineticjs在舞台之外运作不佳。 – lavrton 2013-05-01 02:59:30