2016-01-11 14 views
7

ho lezione .hello in css:Come verificare una classe esiste in css?

<style> 
    .hello { color:#ccc } 
</style> 

Come si può utilizzare jQuery per controllare classe .hello esistere in stile o no?
Ovviamente, è necessario controllare tutti gli stili anche nel documento <link href='style.css' />.

+1

http://stackoverflow.com/questions/983586/how-can-you-determine-if-a-css-class-exists-with-javascript –

+0

Ho bisogno di soluzione jquery. Se hai una risposta, mettila sotto. –

+0

Qualche suggerimento? –

risposta

0

seguito controllerà se certi stili vengono applicati all'elemento (non fa assolutamente conferma che se è venuto da foglio di stile)

if ($('.hello').css('color') == '#CCC') { 
    // true 
} else { 
    // false 
} 
+0

Si potrebbe fraintendere la mia domanda. È solo il controllo di una classe esistente nel documento di stile o meno. –

+0

@MinhAnh si, ho capito, questo controllerà gli stili applicati all'elemento ".hello", quindi se hai applicato qualsiasi stile nel foglio di stile all'elemento sarà vero. La cosa qui è sapere in anticipo che un particolare stile/stile che ci si aspetta dall'elemento e che è presente o meno, questo ti darà sicuramente l'idea se sia in un foglio di stile o meno. – 4dgaurav

0

Vedi sotto frammento di codice, la funzione restituisce la classe o id trovato dalla foglio di stile o tag di stile che passiamo. E restituisce una stringa vuota se non trovata.

<script type="text/javascript"> 
function getDefinedCss(s){ 
    if(!document.styleSheets) return ''; 
    if(typeof s== 'string') s= RegExp('\\b'+s+'\\b','i'); // IE 
capitalizes html selectors 

    var A, S, DS= document.styleSheets, n= DS.length, SA= []; 
    while(n){ 
     S= DS[--n]; 
     A= (S.rules)? S.rules: S.cssRules; 
      for(var i= 0, L= A.length; i<L; i++){ 
      tem= A[i].selectorText? [A[i].selectorText, 
A[i].style.cssText]: [A[i]+'']; 
      if(s.test(tem[0])) SA[SA.length]= tem; 
     } 
    } 
    return SA.join('\n\n'); 
} 
     console.log(getDefinedCss ('ui-helper-hidden')); 

        </script> 

Fammi sapere se funziona per voi.

Problemi correlati