首頁  >  文章  >  web前端  >  如何在 IE7 及更早版本中選擇具有特定屬性的元素?

如何在 IE7 及更早版本中選擇具有特定屬性的元素?

Barbara Streisand
Barbara Streisand原創
2024-10-30 20:33:02842瀏覽

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

用於屬性選擇的querySelectorAll 的本機替代

問題:

如何模擬document.querySelectorAll('[data-foo]') 的功能在IE7 或更早版本中無法使用querySelectorAll()?

解決方案:

解決此相容性問題問題,您可以建立一個自訂函數getAllElementsWithAttribute,它使用本機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;
}

透過使用所需屬性來呼叫此函數(例如getAllElementsWithAttribute('data- foo')),可以取得具有指定屬性的元素陣列

以上是如何在 IE7 及更早版本中選擇具有特定屬性的元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn