我正在使用带有溢出:滚动的 div 创建“缩放”效果。这是我的困境:
我使用以下内容:
$('#object').css({ 'transform':'scale(50)' });
这工作得很漂亮,但现在我想以数学方式将元素的大小调整为其原始宽度/高度(将比例保持在 50%,或任何可能的值...)
$('#object').css({ 'width': ?+'px', 'height': ?+'px' });
很确定这是一个数学问题,我可以接近以下内容:
new_width = parseInt(origWidth) + parseInt(Math.round(origWidth*((100-zoomScale)/100)));
new_height = parseInt(origHeight) + parseInt(Math.round(origHeight*((100-zoomScale)/100)));
如有任何帮助,我们将不胜感激!
最佳答案
你的数学是错误的。
700 * 0.5 = 350
但是...如果 700
代表 50%
,那么 100%
将是 1400
而不是 700 + 350...
所以:
700 * 2 = 1400
假设我的变量是获得相反保持缩放的数学:
(1/0.5) * 700
数学公式为:
(1/(zoomScale/100)) * originalValue
对于原始值,可以使用css
width
或height
它们仍然是像素原始值,经过缩放值修改将是 clientWidth、clientHeight、offsetWidth 和 offsetHeight 元素属性。
关于javascript - CSS 缩放,然后调整为原始大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8577832/