为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

绝地无双 2019-08-27 18:10:52
获取元素-moz-transform:在jQuery中旋转值我有一个图层的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获得curent旋转值?我试过这个$('.element').css("-moz-transform")结果matrix(0.991445, 0.130526, -0.130526, 0.991445, 0px, 0px)并没有告诉我很多。我想要得到的是7.5。
查看完整描述

3 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

这是我使用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'));

等等...


查看完整回答
反对 回复 2019-08-27
?
交互式爱情

TA贡献1712条经验 获得超3个赞

我在Twist的代码中发现了一个错误/功能:函数返回角度。

所以我在返回之前添加了一行简单的代码angle

if(angle < 0) angle +=360;

比结果将是:

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; }

    if(angle < 0) angle +=360;
    return angle;}


查看完整回答
反对 回复 2019-08-27
  • 3 回答
  • 0 关注
  • 825 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信