Wie kann ich einen mit der Funktion .css() hinzugefügten Stil entfernen?

Ich ändere CSS mit jQuery und möchte das Styling entfernen, das ich basierend auf dem Eingabewert hinzufüge:

if(color != '000000') $("body").css("background-color", color); else // remove style ?

Wie kann ich dies tun? Beachten Sie, dass die obige Zeile immer dann ausgeführt wird, wenn eine Farbe mithilfe eines Farbwählers ausgewählt wird (d. h. wenn die Maus über ein Farbrad bewegt wird).

  1. Hinweis: Ich kann das nicht mit css("background-color", "none") machen, weil es das Standard-Styling aus den css-Dateien entfernen würde. Ich möchte nur den von jQuery hinzugefügten Inline-Stil "background-color" entfernen.
Lösung

Das Ändern der Eigenschaft in eine leere Zeichenfolge scheint die Aufgabe zu erfüllen:

$.css("background-color", "");
Kommentare (14)

Die akzeptierte Antwort funktioniert, hinterlässt aber in meinen Tests ein leeres style-Attribut im DOM. Keine große Sache, aber dies entfernt es alle:

removeAttr( 'style' );

Dies setzt voraus, dass Sie alle dynamischen Formatierungen entfernen und zur Formatierung des Stylesheets zurückkehren wollen.

Kommentare (8)

Ich habe einen Weg gefunden, ein Style-Attribut mit reinem JavaScript zu entfernen, nur damit Sie wissen, wie man mit reinem JavaScript arbeitet

var bodyStyle = document.body.style;
if (bodyStyle.removeAttribute)
    bodyStyle.removeAttribute('background-color');
else        
    bodyStyle.removeProperty('background-color');
Kommentare (7)