2012-03-13 88 views
0

我尝试查找一个元素的css旋转,然后将其应用于另一个元素。我会怎么做呢? CSS的参考(但它可能是任何旋转,甚至任何变换):如何找到元素的CSS3旋转?

#firstelement { transform: rotate(90deg); } 

我没有找到的第一个元素的element.style对象什么。有任何想法吗?

回答

3

如果您想要检索可能通过CSS设置的样式,那么您必须以一种更为复杂的方式(对于IE和其他人来说,这不同于读取样式属性)获取它们。下面是可以做到这一点的函数:

function getStyle(el, styleProp) { 
    if (el.currentStyle) { 
     // look for IE 
     return(el.currentStyle[styleProp]); 
    } else if (window.getComputedStyle) { 
     // all other browsers 
     return(document.defaultView.getComputedStyle(el,null).getPropertyValue(styleProp)); 
    } else { 
     // fall back to inline style 
     return(el.style[styleProp]); 
    } 
} 

var val = getStyle(document.getElementById("firstelement"), "transform"); 

请记住,你将不得不管理供应商特定的前缀一些CSS3设置。

您可以在Chrome或Safari中看到一个示例:http://jsfiddle.net/jfriend00/JfC2V/(它是为webkit前缀编码的)。

+0

太棒了!谢谢 :-) – 2012-03-14 19:44:42