这里有一个JSFiddle链接,展示了我正在开发的内容:
http://jsfiddle.net/robtown/SGQq7/22/
这是一个使用KineticJS和Sketch.js的绘图工具集。
你需要选择“制作草图”来自由绘制,然后选择“将草图复制到Kinetic”以将你的草图复制到Kinetic舞台上。选择“制作矩形”可以制作一个矩形。
我需要添加代码来提交这个表单,所以当你选择“制作矩形”按钮时,下面是代码:
$('#makeRect').click(function (e) {
followRect = new Kinetic.Rect({
width: 120,
height: 40,
x: -200,
y:-200,
stroke: 'red',
strokeWidth: 3
});
drawLayer.setVisible(true);
drawLayer.add(followRect);
drawLayer.draw();
makeRect = true;
drawLayer.on("mousemove", function (e) {
if (makeRect) {
followRect.setX(e.x+5);
followRect.setY(e.y+5);
drawLayer.draw();
}
});
这段代码创建了一个矩形,跟随鼠标移动,直到你在画布上点击鼠标,然后将矩形放入舞台的“Redlines”层中:
drawLayer.on("mousedown", function (e) {
if (makeRect) {
addToRedlineLayer(e.x, e.y);
}
followRect.setX(-200);
drawLayer.setVisible(false);
return;
});
getContent()
不存在。我已经使用了getContainer()
来获取实际的画布,然后对其进行了addEventLister
监听操作。感谢您帮我理解这部分内容。 - Guilherme David da Costa