IE4 DOMメソッドでドキュメントのプロパティにアクセスするスクリプトの作成方法
IE4 DOM(Document Object Model)は、Microsoft Internet Explorer のバージョン4で初めて導入された独自のドキュメントオブジェクトモデルです。その後の IE 5 以降のバージョンでは、W3C DOM の基本的な機能の大部分がサポートされるようになりました。
IE4 DOMの特徴
IE4 DOM の最大の特徴は、document.all コレクションを使ってページ内のあらゆる要素にアクセスできる点です。ID や name 属性をキーとして特定の要素を取得できるほか、document.all.tags() メソッドを利用すれば、指定したタグ名を持つ要素をまとめてコレクションとして取り出すことも可能です。
サンプルコード
IE4 DOM メソッドを使ってドキュメントのプロパティにアクセスするには、以下のコードを実行してみてください。
<html>
<head>
<title> Document Title </title>
<script>
<!--
function myFunc()
{
var ret = document.all["heading"];
alert("Document Heading : " + ret.innerHTML );
var ret = document.all.tags("P");
alert("First Paragraph : " + ret[0].innerHTML);
}
//-->
</script>
</head>
<body>
<h1 id = "heading">This is main title</h1>
<p>Click the following to see the result:</p>
<form id="form1" name = "FirstForm">
<input type = "button" value = "Click Me" onclick = "myFunc();" />
<input type = "button" value = "Cancel">
</form>
<form id = "form2" name = "SecondForm">
<input type="button" value="Don't ClickMe"/>
</form>
</body>
</html>コードの解説
このサンプルでは、まず document.all["heading"] によって ID が「heading」の h1 要素を取得し、その innerHTML(内部のHTML)をアラートで表示しています。続いて、document.all.tags("P") を使ってページ内のすべての p 要素をコレクションとして取得し、最初の段落(インデックス0)の内容をアラートで確認できます。
「Click Me」ボタンをクリックすると myFunc() 関数が呼び出され、見出しと最初の段落のテキストが順番に表示されます。なお、document.all は Internet Explorer 独自の実装であるため、現代のクロスブラウザ開発では W3C 標準の getElementById() や querySelector() などの使用が推奨されます。
-
HTML DOM hasFocus()メソッドとは?フォーカス状態を判定する方法を解説
HTML DOMのhasFocus()メソッドは、ドキュメントまたはその内部の要素がフォーカスを持っているかどうかを確認するために使用されます。このメソッドはブール値(true / false)を返し、trueであればドキュメントや要素がフォーカスを持っていること、falseであればフォーカスを持っていないことを表します。構文hasFocus()メソッドの構文は以下の通りです。document.hasFocus()サンプルコードそれでは、hasFocus()メソッドの具体的な使用例を見てみましょう。<!DOCTYPE html> <html> <body>
-
HTML DOM write()メソッドとは?構文と使い方を実例で解説
HTML DOM の write() メソッドは、HTML や JavaScript などの複数の式をドキュメントに直接書き出すための機能です。ページの読み込み時に動的にコンテンツを生成したり、別ウィンドウへメッセージを出力したりする場面で活用されます。注意: このメソッドには重要な特徴が2つあります。ひとつは、ドキュメント内にすでに HTML コードが存在する場合、それを上書きしてしまうという点。もうひとつは、引数を渡しても自動的には改行されず、そのまま連結されるという点です。用途によっては意図しない表示になることがあるため、挙動を理解した上で使うことが大切です。構文write() メソッド