我正在尝试制作一个动态画布,我可以动态添加来自其他来源的图片,我想在后台使用网格,所以我使用了kinetic v3.8.2中的kinetic.rect。 图像需要可以从动力学v.3.6.0中拖动,但是如果我在v3.8.2处于活动状态时设置了可拖动它会中断。 根据FireBug,“配置未定义”。 “img.kinetic.draggable不是一种方法”FireBug说道。
这是否有解决方法?
答案 0 :(得分:0)
你能发一个小例吗? Kinetic API已发生变化。这是一张3.8.2的可拖动图片:
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='js/kinetic/kinetic-v3.8.2.js'></script>
<script type='text/javascript'>
window.onload = function () {
var stage = new Kinetic.Stage('container', 400, 300);
var layer = new Kinetic.Layer({
name: 'someLayer'
});
var logo = new Image();
logo.onload = function() {
var myImage = new Kinetic.Image({
x: stage.width / 2 - (logo.width / 2)
, y: stage.height - logo.height - 5
, image: logo
, width: logo.width
, height: logo.height
});
myImage.draggable(true)
layer.add(myImage);
layer.draw();
}
logo.src = "\./resources/images/ccs_logo.png";
stage.add(layer)
}
</script>
</head>
<body onmousedown="return false;" bgcolor=#000000>
<div id="container">
</div>
</body>
</html>
最值得注意的是,最近为类实例化引入了配置。一个动态矩形用于定义如下:
var rect = new Kinetic.Rectangle(function () {
//do drawing stuff here
});
但现在它是用config(对象文字)定义的:
var rect = new Kinetic.Rectangle({
x: 0,
y: 0,
height: 20,
width: 20
});
您可以在docs中看到示例;还可以查看更新后的KineticJS Tutorials。