我希望能够找出我的元素javascript中使用的伪类。
是否有类似的内容:
$.('#element').attr('pseudoClass')
编辑: 伪类如 - :hover:active:focus
答案 0 :(得分:1)
据我所知,没有办法获得元素的所有伪类。
你可以写一个函数,虽然需要检查所有的伪类,但考虑到它们中的很多,这是一项艰巨的工作。
function getStates(element){
var states = [];
["active","hover","checked",
"enabled", "animated", "first",
"disabled", "empty", "even",
"odd","header","hidden",
"focus","image","input",
"last-child","last-of-type","last"
"only-child",...].forEach(function(x){
if($(element).is(`:${x}`)) states.push(x);
})
return states;
}
该函数必须像getStates("#element")
一样调用,并返回#element
已经获得的状态数组。
完整的选择列表可用there。
答案 1 :(得分:0)
你可以像这样使用jquery的.is()方法:
$('#element').is('pseudoClass')
只需将pseudoClass替换为真正的伪类,例如:hover或:active