Native Alternative zu querySelectorAll für die Attributauswahl
Frage:
Wie können Sie das emulieren Funktionalität von document.querySelectorAll('[data-foo]') ohne die Verfügbarkeit von querySelectorAll() in IE7 oder früher?
Lösung:
Um diese Kompatibilität zu beheben Problem, Sie können eine benutzerdefinierte Funktion, getAllElementsWithAttribute, erstellen, die die erforderliche Attributauswahl mithilfe der nativen Methode getElementsByTagName() durchführt:
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; }
Durch Aufrufen dieser Funktion mit dem gewünschten Attribut (z. B. getAllElementsWithAttribute('data- foo')) können Sie ein Array von Elementen erhalten, die das angegebene Attribut besitzen.
Das obige ist der detaillierte Inhalt vonWie wähle ich Elemente mit einem bestimmten Attribut in IE7 und früheren Versionen aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!