大家好,
var stage = new Kinetic.Stage({
container: 'container',
width: 1230,
height: 40
});
var layer = new Kinetic.Layer();
var rectHeight = 30;
var rectWidth = 100;
var rectY = (stage.getHeight() - rectHeight) / 2;
var triangle = new Kinetic.RegularPolygon({
x: 25,
y: 25,
sides: 3,
radius: 20,
fill: '#00D2FF',
stroke: 'black',
strokeWidth: 2,
draggable: true,
dragBoundFunc: function(pos) {
return {
x: pos.x,
y: this.getAbsolutePosition().y
}
}
});
// add cursor styling
triangle.on('mouseover', function() {
document.body.style.cursor = 'pointer';
});
triangle.on('mouseout', function() {
document.body.style.cursor = 'default';
});
triangle.on('dblclick', function(){
//alert("down");
layer.clear();
stage.clear();
});
layer.add(triangle);
stage.add(layer);
}
这是我的代码片段。这将创建一个能够拖动的三角形(从http://kineticjs.com/教程获得)。
目的:我希望它在我双击它时删除三角形。
问题:
一世。可以删除三角形,但是当您重画三角形时,我将在删除它的当前位置下方绘制。当它被删除并一次又一次地重绘时,也会发生同样的事情。经过几次重绘后,它最终会出现在我的屏幕底部。
ii. Alert() 是用来弹出通知的吧?当我使用 alert() 时,可以从屏幕上删除三角形。如果没有,它会留在那里。
无论如何通过鼠标事件删除对象,当另一个鼠标事件发生时,它会在同一位置绘制对象?