JavascriptとDOMの質問です。

IEで使えるdocument.allの様に、W3C標準でdocument内の全ての要素を集合で取得する方法は無いでしょうか。
document.getElementsByNameやdocument.getElementsByTagNameでは、条件に一致するものしか取得できない様で、無条件にする方法が解りません。
なお、OperaやFireFoxでは、document.allが使えてしまう様ですが、NetscapeやSafariでも使用可能な方法で、回答お願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:peaceman1984 No.1

回答回数97ベストアンサー獲得回数0

ポイント150pt

試して無いので少し無責任回答ですが、正規表現使えるようなのでgetElements(略 でワイルドカード「*」を指定してやれば全ての集合を取得できるのではないでしょうか。

http://blog.livedoor.jp/nipotan/archives/15424695.html

getElementsByClass() - にぽたん研究所

id:sparituda

ワイルドカード使えるんですね。ありがとうございます。

試してみると、IE6,Firefox,Netscape,Safari,OperaはOKです。

document.getElementsByTagName(’*’)

でも、IE5.5はダメでした。なぜか、MacのIE5.2はOK。

新たな回答は無い様なので、これで終了します。

ありがとうございました。

結論として、ブラウザ依存になりますが、以下の通りですね。

document.allをチェックして、対応している環境ならdocument.allを使用。対応していなければ、document.getElementsByTagName(’*’)を使用。

2005/08/24 13:35:56

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません