ホームページ > ウェブフロントエンド > jsチュートリアル > IE7 以前で特定の属性を持つ要素を選択するにはどうすればよいですか?

IE7 以前で特定の属性を持つ要素を選択するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-30 20:33:02
オリジナル
966 人が閲覧しました

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

属性選択用の querySelectorAll のネイティブ代替手段

質問:

どのようにエミュレートできますか? IE7 以前で querySelectorAll() が利用できない場合、document.querySelectorAll('[data-foo]') の機能は利用できませんか?

解決策:

この互換性に対処するにはこの問題を解決するには、ネイティブの getElementsByTagName() メソッドを使用して必要な属性の選択を実行するカスタム関数 getAllElementsWithAttribute を作成できます。

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 中国語 Web サイトの他の関連記事を参照してください。

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