Maison > interface Web > js tutoriel > le corps du texte

Comment surmonter les problèmes getElementsByClassName() dans les anciens navigateurs Internet Explorer ?

Linda Hamilton
Libérer: 2024-10-22 07:33:30
original
506 Les gens l'ont consulté

How to Overcome getElementsByClassName() Issues in Legacy Internet Explorer Browsers?

Problèmes de compatibilité getElementsByClassName() dans les anciens navigateurs Internet Explorer

Question :

Le code ci-dessous génère une erreur dans Internet Explorer 6, 7 et 8 :

var borderTds = document.getElementsByClassName('leftborder');
Copier après la connexion
Copier après la connexion

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;
}; 
Copier après la connexion

Mise en œuvre :

  1. Copiez le script dans votre document HTML.
  2. Une fois le script terminé ajouté, vous pouvez utiliser la méthode getElementsByClassName() comme suit :
var borderTds = document.getElementsByClassName('leftborder');
Copier après la connexion
Copier après la connexion

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!