Maison > Article > interface Web > Comment sélectionner des éléments avec un attribut spécifique dans IE7 et versions antérieures ?
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!