Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 旋转div时将CSS置于左侧和顶部_Javascript_Css_Rotation - Fatal编程技术网

Javascript 旋转div时将CSS置于左侧和顶部

Javascript 旋转div时将CSS置于左侧和顶部,javascript,css,rotation,Javascript,Css,Rotation,在使用style.transform=rotate(90度)旋转矩形div之后,我正在尝试获取矩形div的style.left和style.top 我理解div是如何旋转的,它是围绕“变换点”旋转的。我也知道div可以旋转45度,所以给它一个新的左上角会很尴尬(实际上给了边界框左上角) 但回到原来的问题,将矩形div旋转90度,有没有办法得到“新”的左/顶 我之所以需要这样做,是因为我正在处理一个项目,用于上传图像,允许用户缩放、旋转等,但目前必须使用PHP来保持最终图像的所有尺寸正确(这显然很

在使用
style.transform=rotate(90度)
旋转矩形div之后,我正在尝试获取矩形div的
style.left
style.top

我理解div是如何旋转的,它是围绕“变换点”旋转的。我也知道div可以旋转45度,所以给它一个新的左上角会很尴尬(实际上给了边界框左上角)

但回到原来的问题,将矩形div旋转90度,有没有办法得到“新”的左/顶

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


我还做了一点演示,显示了旋转时上/左位置不会改变

好的,多亏了上面留下的评论,我终于找到了答案

基本上使用:

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旋转之后


我也更新了我的,因为上面评论中的一个使用jQuery,但这种方式只使用javascript。

也许这就是您要找的: