Se un nome di classe è incluso come parametro, solo quella classe verrà rimossa dal set di elementi corrispondenti. Se non vengono specificate classi nel parametro, tutte le classi verranno rimosse.
Prima di jQuery versione 1.12/2.2, il metodo.removeClass()
manipolava la proprietàclassName
degli elementi selezionati, non l’attributoclass
. Una volta modificata la proprietà, è stato il browser ad aggiornare l’attributo di conseguenza. Ciò significa che quando l’attributoclass
è stato aggiornato e il nome dell’ultima classe è stato rimosso, il browser potrebbe aver impostato il valore dell’attributo su una stringa vuota invece di rimuovere completamente l’attributo. Un’implicazione di questo comportamento era che questo metodo funzionava solo per documenti con semantica DOM HTML (ad esempio, non documenti XML puri).
A partire da jQuery 1.12/2.2, questo comportamento viene modificato per migliorare il supporto per i documenti XML, incluso SVG. A partire da questa versione, viene invece utilizzato l’attributo class
. Quindi, .removeClass()
può essere usato su documenti XML o SVG.
Più di una classe possono essere rimossi in un tempo, separati da uno spazio, da un insieme di corrispondenza di elementi, in questo modo:
1
|
|
Questo metodo è spesso utilizzato con .addClass()
per passare di elementi in classi da uno all’altro, così come:
1
|
|
Qui myClass
e noClass
classi vengono rimossi da tutti i paragrafi, mentre yourClass
è aggiunto.
Per sostituire tutte le classi esistenti con un’altra classe, possiamo invece usare .attr( "class", "newClass" )
.
A partire da jQuery 1.4, il metodo .removeClass()
ci consente di indicare la classe da rimuovere passando in una funzione.
1
2
3
|
|
This example removes the class name of the penultimate <li>
from the last <li>
.