Heim > Web-Frontend > CSS-Tutorial > Wie entferne oder ersetze ich ein Stylesheet ordnungsgemäß durch JavaScript?

Wie entferne oder ersetze ich ein Stylesheet ordnungsgemäß durch JavaScript?

Barbara Streisand
Freigeben: 2024-12-13 15:02:10
Original
950 Leute haben es durchsucht

How to Properly Remove or Replace a Stylesheet with JavaScript?

Entfernen oder Ersetzen eines Stylesheets () mit JavaScript/jQuery

Beim Versuch, ein Stylesheet von einer Webseite zu entfernen Dynamisch haben Sie versucht, den folgenden jQuery-Code zu verwenden:

$('link[title="mystyle"]').remove();
Nach dem Login kopieren

Während dieser Code das Linkelement aus dem entfernt DOM bleiben die im Stylesheet definierten Stile auf die Seite angewendet. Dieses Verhalten tritt sowohl in Opera als auch in Firefox auf.

Um ein Stylesheet mithilfe von JavaScript erfolgreich zu entfernen oder zu ersetzen, müssen Sie die Caching-Mechanismen des Browsers für CSS-Dateien verstehen. Browser speichern CSS-Stile im Speicher, was bedeutet, dass die Stile auch nach dem Entfernen des Stylesheet-Elements aus dem DOM weiterhin angewendet werden können.

Um dieses Problem zu beheben:

Für Cross- Browserkompatibilität, deaktivieren Sie das Stylesheet, anstatt es zu entfernen:

document.styleSheets[0].disabled = true;
Nach dem Login kopieren

Verwenden jQuery:

$('link[title=mystyle]')[0].disabled=true;
Nach dem Login kopieren

Durch die Deaktivierung des Stylesheets wird es als inaktiv markiert und der Browser wendet die in diesem Stylesheet definierten Stile nicht mehr an. Dieser Ansatz funktioniert konsistent in allen gängigen Browsern, einschließlich Internet Explorer.

Das obige ist der detaillierte Inhalt vonWie entferne oder ersetze ich ein Stylesheet ordnungsgemäß durch JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage