小编典典

获取元素-moz-transform:旋转jQuery中的值

css

我的图层有CSS样式:

.element {
    -webkit-transform: rotate(7.5deg);    
     -moz-transform: rotate(7.5deg);    
      -ms-transform: rotate(7.5deg);    
       -o-transform: rotate(7.5deg);   
          transform: rotate(7.5deg);
}

有没有办法通过jQuery获得当前旋转值?

我试过了

$('.element').css("-moz-transform")

结果是matrix(0.991445, 0.130526, -0.130526, 0.991445, 0px, 0px)并不能告诉我很多。我想要得到的是7.5


阅读 423

收藏
2020-05-16

共1个答案

小编典典

这是我使用jQuery的解决方案。

这将返回一个数值,该数值对应于应用于任何HTML元素的旋转。

function getRotationDegrees(obj) {
    var matrix = obj.css("-webkit-transform") ||
    obj.css("-moz-transform")    ||
    obj.css("-ms-transform")     ||
    obj.css("-o-transform")      ||
    obj.css("transform");
    if(matrix !== 'none') {
        var values = matrix.split('(')[1].split(')')[0].split(',');
        var a = values[0];
        var b = values[1];
        var angle = Math.round(Math.atan2(b, a) * (180/Math.PI));
    } else { var angle = 0; }
    return (angle < 0) ? angle + 360 : angle;
}

angle1 = getRotationDegrees($('#myDiv'));
angle2 = getRotationDegrees($('.mySpan a:last-child'));

等等…

2020-05-16