javascript - 旋转 div 时获取 CSS 左侧和顶部

标签 javascript css rotation

我试图在使用 style.transform=rotate 旋转矩形 div 后获取其 style.leftstyle.top (90 度)

我理解 div 是如何旋转的,它是围绕“变换点”旋转的。而且我还知道 div 可以旋转 45 度,因此给出新的顶部/左侧会很尴尬(实际上给出边界框左侧/顶部)。

但是回到最初的问题,将矩形div旋转90度,有没有办法得到"new"的左/上?

我需要这个的原因是我正在开发一个元素来上传图像,允许用户缩放、旋转等,但目前必须使用 PHP 来保持最终图像的所有尺寸正确(这是显然很糟糕,因为一旦 PHP 完成旋转/缩放等操作,我就必须继续加载新图像)

我也做了一点jsfiddle显示旋转时顶部/左侧位置不会改变

最佳答案

好的,感谢上面留下的评论,我设法拼凑出一个答案。

基本上使用:

newleft = parseInt(div.style.top) + Math.cos(90) * parseInt(div.style.height);
newtop = parseInt(div.style.left) + Math.sin(90) * parseInt(div.style.height);

div 旋转后。

我已经更新了我的 jsfiddle另外,因为上面注释中使用的是 jQuery,但这种方式只使用了 javascript。

关于javascript - 旋转 div 时获取 CSS 左侧和顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24785550/

相关文章:

javascript - 如何使用纯 Javascript 或像 underscore 这样的库动态构建树列表?

javascript - Joi 数组 基于根键值的对象验证

algorithm - 顺时针旋转矩阵 90*n 度

ios - UIWebView - 在旋转变化时不调整内容的大小?

rotation - Monogame - Sprite 不围绕原点旋转

javascript - 在一个循环中生成一组标记,并为所有标记分配不同的弹出窗口

javascript - 编码下载功能

css - CSS 背景的 Safari 问题

jquery - 防止 CSS 转换元素离开屏幕

css - 第三个元素在 Safari 中换行