我正在寻找一种方法来删除动能js上的图层.. 我认为这是一个简单的任务,我尝试了一些代码,如node.remove()或layer.remove(node),但实际上无法弄明白。
这是示例代码:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<div id="container"></div>
<script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.6.0.min.js"></script>
<script defer="defer">
var stage = new Kinetic.Stage({
container: 'container',
width: 578,
height: 200
});
var layer = new Kinetic.Layer();
var rect = new Kinetic.Rect({
x: 239,
y: 75,
width: 100,
height: 50,
fill: 'green',
stroke: 'black',
strokeWidth: 4
});
// add the shape to the layer
layer.add(rect);
// add the layer to the stage
stage.add(layer);
function delete()
{
layer.remove();
}
</script>
<button type="button" onclick="delete()">Delete</button>
</body>
</html>
我无法弄清楚为什么我的delete()函数不起作用。 有人知道我做错了什么?
之前谢谢答案 0 :(得分:0)
实际上我从来不需要删除整个图层。我清除它并重复使用它。
layer.removeChildren();
或
只删除特定内容,如(群组)或(行)或(图片)或其他......
console.dir(layer); // initial check -- look at (children)...
var groups = $('#layerID').find('Group');
groups.each(function(group) {
group.destroy(); or....
group.remove();
});
console.dir(layer); // verify it worked (look at children again... a bunch were removed)