我有这个简单的小提琴来展示我想要完成的事情:http: //jsfiddle.net/eUSep/
正如你所看到的,我正在扩大我的test1
div 并指定一个新的原点。如何计算test2
转换后的新位置(上、左)?它必须根据原点和比例计算,但我无法正确计算。
起初我以为我可以通过计算高度和宽度的变化(基于当前比例和以前的比例),然后从 current 中减去一半left
,然后将另一半添加到width
(伪代码)上:
var left = current_left - (width_change / 2);
var top = current_top - (height_change / 2 );
var right = current_left + width + (width_change / 2);
var bottom = current_top + height + (height_change / 2);
但这并没有考虑到原点,我认为这只有在原点每次都在确切的中心时才有效。有谁知道我怎么能做到这一点?