如何使用Javascript检索伪元素转换样式值?
情况:如何使用Javascript检索伪元素转换样式值?,javascript,css,pseudo-element,Javascript,Css,Pseudo Element,情况: div.xy:hover { transform: all rotate(360deg); -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); } 问题: 我需要检索360,以便显示和更改它。 需要一些帮助,了解通往360的路径。 有什么想法吗?我相信document.getElementById('XYZ').style.Web
div.xy:hover {
transform: all rotate(360deg);
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-o-transform: rotate(360deg);
}
问题:我需要检索360,以便显示和更改它。 需要一些帮助,了解通往360的路径。
有什么想法吗?我相信
document.getElementById('XYZ').style.WebkitTransform
将在WebKit浏览器中返回“旋转(360度)”
。您可以对Firefox 3.1+使用style.MozTransform
,对IE9+使用style.msTransform
,对Opera使用style.OTransform
资料来源:
要将元素与鼠标事件绑定,请执行以下操作:
var e = document.getElementById('test') // Your div ID
e.onmouseover = function(){
var degree = 360; // Rotation on :hover
e.style.WebkitTransform = 'rotate(' + degree + 'deg)';
e.style.MozTransform = 'rotate(' + degree + 'deg)';
e.style.OTransform = 'rotate(' + degree + 'deg)';
e.style.msTransform = 'rotate(' + degree + 'deg)';
e.style.transform = 'rotate(' + degree + 'deg)';
}
e.onmouseout = function(){
var degree = 0; // Initial rotation
e.style.WebkitTransform = 'rotate(' + degree + 'deg)';
e.style.MozTransform = 'rotate(' + degree + 'deg)';
e.style.OTransform = 'rotate(' + degree + 'deg)';
e.style.msTransform = 'rotate(' + degree + 'deg)';
e.style.transform = 'rotate(' + degree + 'deg)';
}
使用jQuery可能更简单,但您必须了解JavaScript的根!
您将需要jQuery,但它可能是您正在寻找的
$(document).ready(function(){
$(".xy:hover").css("transform")
});
这将以字符串形式返回值。您可能应该检查它是否返回360deg
或整个结果。
删除jQuery和CSS的
div
。因为jQuery不调用它会更快,而且在CSS中它不会增加特殊性。它可以工作,谢谢,但只使用div,而不使用div:hover。有没有可能更改div:hover样式?我不知道用JavaScript
修改元素:hover
样式的方法,但是可以在元素上绑定.onmouseover
和.onmouseout
事件。请看我的更新答案。+1是一个不错的答案-难道你不知道如何为所有使用Javascript的浏览器设置转换原点
,请@Ωmega:我想你也可以这样做,使用element.style.webkitTransformOrigin=“50%50%”代码>和element.style.mozTransformOrigin=“50%50%”代码>。请注意,我没有测试它,我不认为您可以为Opera做msTransformOrigin和OTransformOrigin&即。。。不过,谢谢,但我对jQuery一无所知。刚从基本Javascript开始,现在就转到AJAX。简单的Javascript没有解决方案吗?我想remimbreton的答案就是你想要的