Lors de la tentative d'utilisation de getElementsByClassName() pour sélectionner des éléments par leur nom de classe dans Internet Explorer 6, 7 ou 8 , vous pouvez rencontrer le message d'erreur « L'objet ne prend pas en charge cette méthode ». En effet, ces anciens navigateurs ne prennent pas en charge cette méthode DOM moderne.
Pour surmonter cette limitation et activer la sélection basée sur les classes dans ces navigateurs, envisagez d'implémenter une solution personnalisée. L'extrait ci-dessous fournit une fonction JavaScript qui reproduit la fonctionnalité de getElementsByClassName() :
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; };
Après avoir ajouté ce code à votre page Web, vous pouvez utiliser document.getElementsByClassName() comme d'habitude pour récupérer les éléments par classe. noms dans IE6, IE7 et IE8.
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!