如何在javascript中获取样式转换旋转值?



我需要变换旋转值...? alert("rotate(30deg("(...

<div id="demo" style="transform: rotate(30deg);width:100px;height:50px;background-color:red;">
var myElement = document.getElementById("demo");
var rotate = getElementById("demo").style.transformRotate.value;
alert(rotate);

您可以使用match解析transform样式以获取旋转值:

var myElement = document.getElementById("demo");
var rotate = myElement.style.transform.match(/rotate((.+))/);
alert(rotate && rotate[1]);  // avoid error if match returns null
<div id="demo" style="transform: rotate(30deg);width:100px;height:50px;background-color:red;">

要将数字 (30( 与单位 (度( 分开,可以执行以下操作:

var myElement = document.getElementById("demo");
var rotate = myElement.style.transform.match(/rotate((d+)(.+))/);
if (rotate) {
var [num, unit] = rotate.slice(1);  // slice is needed since first element contains entire match
console.log('num:', num, 'unit:', unit);
}
<div id="demo" style="transform: rotate(30deg);width:100px;height:50px;background-color:red;">

您需要存储transform而不是transformRotate

var myElement = document.getElementById("demo");
var transformation = myElement.style.transform;
alert(transformation);
<div id="demo" style="transform: rotate(30deg);width:100px;height:50px;background-color:red;">

最新更新