Question :
Le code ci-dessous génère une erreur dans Internet Explorer 6, 7 et 8 :
var borderTds = document.getElementsByClassName('leftborder');
Problème :
Les anciens navigateurs Internet Explorer comme IE6, IE7 et IE8 ne prennent pas en charge nativement getElementsByClassName() méthode. Cette méthode est utilisée pour sélectionner des éléments en fonction de leur attribut de classe.
Solution :
Pour résoudre ce problème, vous pouvez utiliser la solution de contournement suivante pour émuler getElementsByClassName() fonctionnalité dans ces navigateurs :
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; };
Mise en œuvre :
var borderTds = document.getElementsByClassName('leftborder');
Avantages :
Cette solution de contournement vous permet de sélectionner des éléments par leur classe dans les anciens navigateurs Internet Explorer sans recourir à des bibliothèques externes comme jQuery.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!