2016-07-27 8 views
-1

Ich möchte herausfinden, welche Pseudoklasse in meinem Element Javascript verwendet wird.Wie herauszufinden, welche Pseudoklasse derzeit verwendet wird?

Gibt es etwas entlang der Linien von: $.('#element').attr('pseudoClass')

EDIT: Pseudo-Klassen wie -: Hover: aktiv:

+2

Welche Pseudo-Klasse redest du da? – charlietfl

+0

@ k.chao.0424 Sprichst du über Dinge wie ': hover',': visited' und ähnliches? –

+1

Was versuchst du hier zu erreichen? – Adjit

Antwort

1

Es gibt keine Möglichkeit, alle Pseudo-Klassen ein Element zu erhalten konzentrieren, wie Soweit ich weiß.

Sie könnten eine Funktion schreiben, die eine Überprüfung aller Pseudo-Klassen erfordert, und da es viele davon gibt, ist das eine schwierige Aufgabe.

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; 
} 

Diese Funktion würde wie getStates("#element") aufgerufen werden und würde die Reihe von Staaten zurück, die die #element bekommen hat.

Die vollständige Liste der Selektoren ist verfügbar there.

0

Sie können jQuerys .is() -Methode wie folgt verwenden:

$('#element').is('pseudoClass') 

Und Pseudo ersetzen mit einem echten Pseudoklasse wie: schweben oder: aktiv

Verwandte Themen