古いブラウザで属性によって要素を選択するにはどうすればよいですか?

DDD
リリース: 2024-10-30 02:34:02
オリジナル
1073 人が閲覧しました

How to Select Elements by Attribute in Older Browsers?

querySelectorAll を使用せずに属性によって要素を取得する方法

質問:

次の場合に、特定の属性によって要素を取得するにはどうすればよいですか? IE7 などの古いブラウザでは、querySelectorAll メソッドは利用できません?

ネイティブ ソリューション:

querySelectorAll がないブラウザでは、カスタム関数を実装して同様のことを実現できます。機能:

<code class="javascript">function getAllElementsWithAttribute(attribute) {
  const matchingElements = [];
  const allElements = document.getElementsByTagName('*');
  for (let i = 0; i < allElements.length; i++) {
    if (allElements[i].getAttribute(attribute) !== null) {
      // Element exists with attribute. Add to array.
      matchingElements.push(allElements[i]);
    }
  }
  return matchingElements;
}</code>
ログイン後にコピー

例:

「data-foo」属性を持つ要素を取得するには、次のコードを使用できます:

<code class="javascript">const elementsWithFooAttribute = getAllElementsWithAttribute('data-foo');</code>
ログイン後にコピー

以上が古いブラウザで属性によって要素を選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート