[英]Drawing new Kinetic JS polygon with click function
我试图通过单击另一个来触发新的动力学形状(不是克隆)的创建。 任何帮助将不胜感激,因为我似乎找不到答案。 我已经尝试了以下方法,但没有任何运气:
var sq1 = new Kinetic.Rect({
x: 25,
y: 400,
width: 200,
height: 200,
fill: '#000000',
draggable: true
});
var $sq1 = sq1
$sq1.on( "click", function() {
var sq1copy = new Kinetic.Rect({
x: 45,
y: 450,
width: 100,
height: 100,
fill: '#FFFFFF',
draggable: true
});
});
您几乎已经准备就绪...只需确保将新的sq1添加到图层中,然后还要添加layer.draw
var stage = new Kinetic.Stage({ container: 'container', width: 750, height: 750 }); var layer = new Kinetic.Layer(); stage.add(layer); var sq1 = new Kinetic.Rect({ x: 25, y: 100, width: 200, height: 200, fill: '#000000', draggable: true }); layer.add(sq1); layer.draw(); var $sq1 = sq1 var offset=20; $sq1.on( "click", function() { var sq1copy = new Kinetic.Rect({ x: 45+offset, y: 150+offset, width: 100, height: 100, fill: '#FFFFFF', draggable: true }); offset+=20; layer.add(sq1copy); layer.draw(); });
body { padding: 20px; } #container { border: solid 1px #ccc; margin-top: 10px; width: 750px; height: 750px; }
<script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v5.1.0.min.js"></script> <div id="container"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.