我尝试找到一个元素的 css 旋转,然后将其应用到另一个元素。我该怎么做?供引用的 CSS(但它可以是任何旋转甚至任何变换):
#firstelement { transform: rotate(90deg); }
我在第一个元素的 element.style 对象中找不到任何内容。有什么想法吗?
最佳答案
如果你想检索可能通过 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 设置管理特定于 vendor 的前缀。
您可以在此处查看适用于 Chrome 或 Safari 的示例:http://jsfiddle.net/jfriend00/JfC2V/ (它是为 webkit 前缀编码的)。
关于javascript - 如何找到元素的 CSS3 旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9693275/