Heim > Web-Frontend > js-Tutorial > Wie funktioniert document.getElementsByClassName im Internet Explorer?

Wie funktioniert document.getElementsByClassName im Internet Explorer?

DDD
Freigeben: 2024-11-06 00:45:02
Original
930 Leute haben es durchsucht

How to Make document.getElementsByClassName Work in Internet Explorer?

Kompatibilität von document.getElementsByClassName mit Internet Explorer

Die Methode document.getElementsByClassName bietet eine bequeme Möglichkeit, Elemente mit einer bestimmten Klasse abzurufen. Es treten jedoch Kompatibilitätsprobleme mit Internet Explorer (IE) auf.

Jonathan Snooks Lösung

Ein gängiger Ansatz zur Behebung dieses Problems ist die Verwendung der benutzerdefinierten Funktion getElementsByClassName von Jonathan Snook . Diese Funktion verwendet einen regulären Ausdruck, um nach Elementen mit dem gewünschten Klassennamen zu suchen.

Der IE kann bei dieser Lösung jedoch aufgrund eines falschen Aufrufs immer noch auf einen Fehler stoßen. Die Funktion sollte wie folgt aufgerufen werden:

function getElementsByClassName(node, classname) {...}

tabs = getElementsByClassName(document.body, 'tab');
Nach dem Login kopieren

Anstelle von:

document.getElementsByClassName(document.body, 'tab');
Nach dem Login kopieren

Andere kompatible Optionen

Bei Unterstützung für IE8 und höher ausreicht, können Sie die folgende Polyfüllung für document.getElementsByClassName implementieren:

if (!document.getElementsByClassName) {
    document.getElementsByClassName = function (className) {
        return this.querySelectorAll('.' + className);
    };

    Element.prototype.getElementsByClassName = document.getElementsByClassName;
}

tabs = document.getElementsByClassName('tab');
Nach dem Login kopieren

Fazit

Indem Sie den Aufruf der Funktion von Jonathan Snook anpassen oder die bereitgestellte Polyfüllung verwenden, Sie können Kompatibilitätsprobleme mit document.getElementsByClassName im IE beheben.

Das obige ist der detaillierte Inhalt vonWie funktioniert document.getElementsByClassName im Internet Explorer?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage