Maison  >  Article  >  interface Web  >  Comment sélectionner des éléments avec un attribut spécifique dans IE7 et versions antérieures ?

Comment sélectionner des éléments avec un attribut spécifique dans IE7 et versions antérieures ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 20:33:02842parcourir

How to Select Elements with a Specific Attribute in IE7 and Earlier?

Alternative native à querySelectorAll pour la sélection d'attributs

Question :

Comment pouvez-vous émuler le fonctionnalité de document.querySelectorAll('[data-foo]') sans la disponibilité de querySelectorAll() dans IE7 ou version antérieure ?

Solution :

Pour résoudre cette compatibilité problème, vous pouvez créer une fonction personnalisée, getAllElementsWithAttribute, qui effectue la sélection d'attribut nécessaire à l'aide de la méthode native getElementsByTagName() :

function getAllElementsWithAttribute(attribute) {
  var matchingElements = [];
  var allElements = document.getElementsByTagName('*');
  for (var i = 0, n = allElements.length; i < n; i++) {
    if (allElements[i].getAttribute(attribute) !== null) {
      matchingElements.push(allElements[i]);
    }
  }
  return matchingElements;
}

En appelant cette fonction avec l'attribut souhaité (par exemple, getAllElementsWithAttribute('data- foo')), vous pouvez obtenir un tableau d'éléments possédant l'attribut spécifié.

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!

Déclaration:
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