獲取元素-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'));等等...
交互式愛情
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;}- 3 回答
- 0 關注
- 877 瀏覽
相關問題推薦
添加回答
舉報
0/150
提交
取消
