Rimuovi più attributi con removeAttr di jQuery


93

Ho il codice seguente.

$(document).ready(function(){
 $('#listing img')
 .attr('width', 250)
 .removeAttr('height').removeAttr('align').removeAttr('style')
 .wrap('<p />');
});

Esiste un modo più efficiente per rimuovere più attributi?

Risposte:


176

Sì :

.removeAttr('height align style')

Dalla documentazione :

a partire dalla versione 1.7, può essere un elenco di attributi separati da spazi.


1
Santo cielo, quella fu una risposta veloce. Grazie mille. Sapevo che questa era un'opzione per removeStyle, ma non sono riuscito a trovare nulla su removeAttr. Grazie per la condivisione.
somecallmejosh

come si fa se non è jquery 1.7+?
Patoshi パ ト シ

@duckx Update. Non ha senso utilizzare una vecchia versione di jQuery. Molti bug sono stati corretti e jQuery è costantemente sviluppato per stare al passo con le evoluzioni del browser.
Denys Séguret

3

Sì, puoi rimuoverlo in questo modo:

$('#listing img').removeAttr('height align style');

puoi anche aggiungere questi attributi come segue:

$('#listing img').attr({ height: "20", align: left }).css({ color: red, text-align: center });
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.