我有我的画布两个对象。 中较小的一个是在较大的一个的顶部。 我想从调整较大的物体比小物体更小的尺寸停止用户。
为此,我勾搭成更大的物体缩放事件:
本实施例中只实现它的对象的左侧。
function stageIntersectsWithObject() {
var stageLeft = el.getBoundingRect(true).left;
var objLeft = rect1.getBoundingRect(true).left
el.setCoords();
if(stageLeft > objLeft){
el.set('left', objLeft);
el.set('scaleX', this.lastScaleX);
} else {
this.lastScaleX = el.scaleX;
}
}
只要左侧满足更大的对象更改宽度为好。 我有行为限制了这项由节能scaleX值,但它仍然没有工作顺利进行。
请看看这个小提琴: http://jsfiddle.net/zc3ufbha/1/
点击黑色物体,直到它碰到小绿叶对象从左边改变它的大小,以正确的。 你会看到黑色的物体宽度在左侧停止变化。
我最好如何预防呢? 谢谢