Frage:
Der folgende Code löst einen Fehler im Internet aus Explorer 6, 7 und 8:
var borderTds = document.getElementsByClassName('leftborder');
Problem:
Alte Internet Explorer-Browser wie IE6, IE7 und IE8 unterstützen getElementsByClassName() nicht nativ. Verfahren. Diese Methode wird verwendet, um Elemente basierend auf ihrem Klassenattribut auszuwählen.
Lösung:
Um dieses Problem zu beheben, können Sie die folgende Problemumgehung verwenden, um getElementsByClassName() zu emulieren. Funktionalität in diesen Browsern:
document.getElementsByClassName = function(cl) { var retnode = []; var elem = this.getElementsByTagName('*'); for (var i = 0; i < elem.length; i++) { if((' ' + elem[i].className + ' ').indexOf(' ' + cl + ' ') > -1) retnode.push(elem[i]); } return retnode; };
Implementierung:
var borderTds = document.getElementsByClassName('leftborder');
Vorteile:
Mit dieser Problemumgehung können Sie Elemente nach ihrer Klasse auswählen ältere Internet Explorer-Browser, ohne auf externe Bibliotheken wie jQuery angewiesen zu sein.
Das obige ist der detaillierte Inhalt vonWie überwindet man getElementsByClassName()-Probleme in älteren Internet Explorer-Browsern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!