Element | NN 6 IE なし DOM 1 |
W3C DOM の Element オブジェクトは Core モジュールのオブジェクトであり、実際の XML ドキュメントに存在する要素オブジェクトのタイプを表します。このノードタイプは、ルートの Node オブジェクトからプロパティとメソッドを継承し、他のノードのコンテナとしての機能も追加されます。HTML ドキュメント内の要素は HTMLDocument タイプの要素であり、Element オブジェクトを継承します。本章の最初で説明したように、Element オブジェクトのあらゆるプロパティとメソッドはすべての HTML 要素オブジェクトで共有されます。 |
|
オブジェクト参照 | |
elementNodeReference
|
|
オブジェクト固有のプロパティ | |
なし |
|
オブジェクト固有のメソッド | |
なし |
|
オブジェクト固有のイベントハンドラープロパティ | |
なし |
all[] | NN なし IE 4 DOM なし |
読み取り専用 | |
現在の要素に含まれるすべての HTML 要素オブジェクトの配列を返します。配列中の要素にはソースコード順序に従って 0 を基準とするインデックスが付いています。コレクションは、document.all[] によってドキュメント全体のすべての要素が公開されるように、ネストされた要素の世代を超越します。このプロパティ値独自のプロパティおよびメソッドの一覧については、all オブジェクトを参照してください。 |
|
Internet Explorer のすべてのコレクションと同様に、インデックス値を角かっこで囲む従来の JavaScript の配列構文と、インデックス値を普通のかっこで囲む IE の JScript の配列構文のいずれも使用できます。Windows と Macintosh の両方でブラウザを問わずコレクションを使用できるようにするには、角かっこを使用してください。 |
|
IE ブラウザに厳密に対応する開発を行う場合を除き、IE 5 以降および Netscape 6 で実装された document.getElementById() を使用して W3C DOM 参照へ移行することを検討してください。 |
|
例 | |
var inpVal = document.all.first_name.value; |
|
値 | |
HTML ソースコード順序の要素オブジェクト参照の配列 (コレクション) |
|
既定値 | |
現在のドキュメントのモデル |
behaviorUrns[] | NN なし IE 5(Win) DOM なし |
読み取り専用 | |
スタイルシートの構文によって要素に関連付けられたすべての外部ビヘイビア (.htc ファイル) の Uniform Resource Name (URN) を示します。セキュリティ上の理由により、この配列の文字列エントリは常に空となります。 |
|
例 | |
var htcCount = document.getElementById(elementID).behaviorUrns.length;
|
|
値 | |
空の文字列の配列 |
|
既定値 | |
長さ 0 の配列 |
canHaveChildren | NN なし IE 5(Win) DOM なし |
読み取り専用 | |
現在の要素を他の要素のコンテナとして機能させるかどうかを示します。プロパティ値は、Windows 版 IE の組み込み HTML DTD に基づいています。この DTD には、子ノードを挿入できない要素 (<br> など) が定義されています。 |
|
例 | |
if (elementRef.canHaveChildren) {
// statements to insert or append child elements
}
|
|
値 | |
true または false のブール値 |
|
既定値 | |
要素によって異なります。 |
children[] | NN なし IE 4 DOM なし |
読み取り専用 | |
現在の要素に含まれる 1 番目のレベルの全 HTML 要素オブジェクトの配列を返します。このコレクションは、現在の要素の子のみを参照する点で、all[] コレクションとは異なります。all[] コレクションは、世代を超えて参照します。たとえば、document.body.children[] にはフォームが含まれる場合がありますが、そのフォーム内にネストされたフォーム要素への参照は含まれません。配列中の要素にはソースコード順序に従って 0 を基準とするインデックスが付いています。childNodes[] 配列とは異なり、このプロパティのスコープは要素であり、ノードではありません。children オブジェクトを参照してください。 |
|
例 | |
for (var i = 0; i < elementRef.children.length; i++) { if (elementRef.children[i].tagName == "FORM") { // operate on a form element } } |
|
値 | |
要素オブジェクトへの参照の配列 |
|
既定値 | |
長さ 0 の配列 |
className | NN 6 IE 4 DOM 1 |
読み書き | |
一般的に、クラスセレクタに定義されているスタイルシート規則に要素を関連付けるために使用される識別子です。スクリプトによって、要素に対するクラスの関連付けを変更できます。ドキュメントに代替のクラスセレクタとスタイル規則が含まれている場合は、要素の className プロパティを調整すると、簡単に多数のスタイルプロパティを一度に調整できます。 |
|
例 | |
document.getElementById("elementID").className = "altHighlighted";
|
|
値 | |
大文字と小文字を区別する文字列。複数のクラス名を指定する場合は、スペースで区切ります。 |
|
既定値 | |
空の文字列 |
hideFocus | NN なし IE 5.5(Win) DOM なし |
読み書き | |
ブラウザでフォーカスされている要素の周囲に、フォーカスを示す点線の領域を表示するかどうかを示します。要素がデフォルトでフォーカス可能である場合や、tabindex 属性が設定されている場合は、この要素にフォーカスを移動できます。このプロパティが true に設定されている場合、フォーカスの状態を示す手がかりとなるものは表示されません。 |
|
例 | |
document.getElementById("elementID").hideFocus = true;
|
|
値 | |
true または false のブール値 |
|
既定値 | |
false |
id | NN 6 IE 4 DOM 1 |
読み書き | |
要素をドキュメント中のその他すべての要素から区別するための固有の識別子を示します。このプロパティの値は、要素への参照をまとめる場合に最も多く使用されますが、すべての要素を対象としたループ処理によって、id 値と一致するものがあるかどうかを確認することもできます。通常、ドキュメントツリー内にある要素については、このプロパティ値を変更しないでください。ただし、スクリプトが document.createElement() メソッドなどによって新しい要素オブジェクトを作成する場合は、そのオブジェクトの id プロパティに固有の識別子を割り当て、要素をドキュメントツリーに追加することができます。 |
|
例 | |
var headID = document.getElementsByTagName("head")[0].id; |
|
値 | |
文字列 |
|
既定値 | |
空の文字列 |
innerText | NN なし IE 4 DOM なし |
読み書き | |
現在の要素の表示テキスト (タグを含まない) を示します。ネストされた HTML タグを表示テキストに含める場合は、innerHTML を参照してください。このプロパティに変更を加えても HTML パーサーを介して表示されないので、挿入された HTML タグはテキストコンテンツとして扱われて表示されます。このプロパティを変更できるのは、ドキュメントが完全に読み込まれた後のみです。innerText プロパティに対する変更は、ブラウザでソースを表示するときのソースコードには反映されません。Macintosh 版 IE 4 では、このプロパティは一部のオブジェクトでのみサポートされます。 |
|
例 | |
document.getElementById("elementID").innerText = "How now brown cow?";
|
|
値 | |
文字列 |
|
既定値 | |
空の文字列 |
isContentEditable | NN なし IE 5.5(Win) DOM なし |
読み取り専用 | |
現在の要素で Windows 版 IE のユーザー編集を実行できるかどうかを示します。実際の編集状態は、要素に明示的に設定されているか、ノードツリーの上位から継承されているかのいずれかです。 <?xml version="1.0" encoding="ISO-8859-1"> <results xmlns:libBook="http://catalog.umv.edu/schema"> <libBook:title libBook:rareBooks="true">De Principia</libBook:title> </results>? |
|
例 | |
if (document.getElementById("elementID").isContentEditable) {
// process the editable element
}
|
|
値 | |
true または false のブール値 |
|
既定値 | |
false |
offsetParent | NN 6 IE 4 DOM なし |
読み取り専用 | |
現在の要素のオフセット配置コンテキストとなるオブジェクトへの参照を返します。IE のページ上のほとんどの要素および Netscape 6 のページ上のすべての要素では、body オブジェクトです。ただし、IE では、div 要素で囲まれた要素や、テーブルセルである要素は、別の親を持ちます。さらに、複雑にネストされた要素では、ブラウザのバージョンによって返されるオブジェクトが大幅に異なります。たとえば、td 要素の offsetParent プロパティは、Windows 版 IE 4 ではすぐ外側の tr 要素となりますが、Windows 版 IE 5 以降と Macintosh 版 IE のすべてのバージョンでは table 要素となります。Netscape 6 では、td 要素の offsetParent は body 要素となります。このプロパティを使用してインライン要素の正確な位置を計算する例については、本章の 9.2 節を参照してください。 |
|
例 | |
var containerLeft = document.getElementById("elementID")offsetParent.offsetLeft;
|
|
値 | |
オブジェクトへの参照 |
|
既定値 | |
body オブジェクト |
outerHTML | NN なし IE 4 DOM なし |
読み書き | |
開始タグと終了タグを含めて、現在の要素の表示テキストと HTML タグ (つまり、すべてのソースコード) を示します。表示テキストだけを扱う場合は、outerText を参照してください。現在の要素のタグを除くソースコードを扱う場合は、innerHTML を参照してください。このプロパティに HTML タグを含む変更を加えると、HTML パーサーを介して表示されるので、新しい値も元のソースコードの一部であるかのように扱われます。このプロパティを変更できるのは、ドキュメントが完全に読み込まれた後のみです。また、処理中には、要素のタイプを変更したり、または連続したテキストコンテンツを持つ要素に置き換えることもできます。outerHTML プロパティに対する変更は、ブラウザでソースを表示する場合のソースコードには反映されません。既存の HTML に追加する場合は、insertAdjacentHTML() メソッドを参照してください。このプロパティは、Macintosh 版 IE 4 の一部のオブジェクトでのみサポートされています。W3C DOM で相当するプロパティは、ノードレベルのオブジェクトに対して広範囲の操作を行う必要があります。詳細については、第 5 章を参照してください。 |
|
例 | |
document.getElementById("elementID").outerHTML =
"<acronym id="quotes">NI<i>M</i>BY</acronym>";
|
|
値 | |
HTML タグを含む文字列または含まない文字列 |
|
既定値 | |
空の文字列 |
outerText | NN なし IE 4 DOM なし |
読み書き | |
現在の要素の表示テキスト (タグを含まない) を示します。要素の HTML タグを表示テキストに含める場合は、outerHTML を参照してください。このプロパティに変更を加えても HTML パーサーを介して表示されないので、挿入された HTML タグはテキストコンテンツとして扱われて表示されます。このプロパティを変更できるのは、ドキュメントが完全に読み込まれた後のみです。outerText プロパティに対する変更は、ブラウザでソースを表示するときのソースコードには反映されません。Macintosh 版 IE 4 では、このプロパティは一部のオブジェクトでのみサポートされます。 |
|
例 | |
document.getElementById("elementID").outerText = "UNESCO";
|
|
値 | |
文字列 |
|
既定値 | |
空の文字列 |
parentElement | NN なし IE 4 DOM なし |
読み取り専用 | |
HTML コンテナ階層でそのすぐ外側にある要素への参照を返します。要素の HTML の親は、offsetParent プロパティが返すオブジェクトと同じである必要はありません。parentElement はソースコードのコンテナに厳密に従いますが、offsetParent プロパティは、現在の要素の位置を決める座標系として使用されるすぐ外側の要素を返します。たとえば、メインドキュメントに em 要素がネストされている p 要素が含まれる場合、em 要素は 2 つの親を持ちます。HTML ソースコードのコンテナにより、p 要素が parentElement の値として返されます。また、座標空間のコンテナにより、body 要素が offsetParent の値として返されます。 |
|
次のように parentElement プロパティをカスケードすることによって、複数の親レベルをジャンプできます。 |
|
得られた参照を使用して、親要素のプロパティやメソッドにアクセスできます。 |
|
対応する W3C DOM プロパティは、parentNode です。 |
|
例 | |
document.getElementById("elementID").parentElement.style.fontSize = "14pt";
|
|
値 | |
要素オブジェクトへの参照 |
|
既定値 | |
要素によって異なります。 |
sourceIndex | NN なし IE 4 DOM なし |
読み取り専用 | |
ドキュメント内のすべての要素のうち、指定された要素の 0 を基準とするインデックスを返します。要素は、1 番目の要素の sourceIndex が 0 となるように、ソースコードの順序に従って番号付けされます。 |
|
例 | |
var whichElement = document.getElementById("elementID").sourceIndex;
|
|
値 | |
正の整数または 0 |
|
既定値 | |
要素によって異なります。 |
tagName | NN 6 IE 4 DOM 1 |
読み取り専用 | |
現在の要素のタグ名を返します。タグ名は、ソースコードのスタイルや DOCTYPE 宣言に関係なく、文字列比較ができるように常にすべて大文字で返されます。 |
|
例 | |
var theTag = document.getElementById("elementID").tagName;
|
|
値 | |
文字列 |
|
既定値 | |
要素によって異なります。 |
uniqueID | NN なし IE 5(Win) DOM なし |
読み取り専用 | |
ページ上のすべてのオブジェクト識別子に固有の識別子文字列を返します。主に、ブラウザが独自の命名規則を使用して新しく作成した要素の名前を付ける場合、要素に ID を割り当てるために使用します。通常、document オブジェクトのプロパティとして使用されますが、既存の要素オブジェクト参照でもアクセスできます。この識別子は、要素 ID を必要とするメソッドへのパラメータを文字列として使用する場合に有効です。 |
|
例 | |
var newElem = document.createElement("p"); newElem.id = document.uniqueID; |
|
値 | |
文字列 |
|
既定値 | |
ブラウザの生成値 |
addBehavior() | NN なし IE 5(Win) DOM なし |
addBehavior("URL") | |
現在の要素に IE の内部ビヘイビアまたは外部ビヘイビアを添付します。スクリプトによってビヘイビアを添付すると、ビヘイビアに対して定義されたイベントが存在した場合、要素はそのイベントに応答します。また、ビヘイビアに関連付けられたプロパティおよびメソッドにアクセスできるようになります。外部ビヘイビアファイルは、現在のページと同じドメインから同じプロトコルで配信される必要があります。Windows 版 IE のビヘイビアを適用する方法の詳細については、http://msdn.microsoft.com/workshop/author/behaviors/overview.aspを参照してください。 |
|
パラメータ | |
|
|
戻り値 | |
removeBehavior() メソッドのパラメータとして使用可能な整数のシリアル番号 |
applyElement() | NN なし IE 5(Win) DOM なし |
applyElement(elementObject[, type]) | |
2 番目のパラメータ値に基づいて、現在のオブジェクトの子要素、または現在のオブジェクトの新しい親として新しい要素を挿入します。デフォルトのビヘイビアでは、現在のオブジェクトは新しい要素で囲まれます。ただし、新しい要素を子要素として挿入することもできます。この場合、現在のオブジェクトが document.createElement() による作成後に単純にメモリ内に残るのではなく、ドキュメントツリー内にあって、既に子要素をネストしていれば、以前の子が、挿入された要素の子 (つまり、現在のオブジェクトの孫) となるように、新しく適用される要素が挿入されます。これは、IE の要素挿入メソッド間で固有のビヘイビアであり、ドキュメントツリーに大きく影響します。使用にあたっては注意してください。 |
|
パラメータ | |
|
|
戻り値 | |
新しく追加される要素オブジェクトへの参照 |
attachEvent() | NN なし IE 5(Win) DOM なし |
attachEvent("eventName", functionReference) | |
イベントハンドラー関数を、特定のイベントタイプの要素オブジェクトにバインドします。W3C DOM の addEventListener() メソッドへの操作と同様に、IE の attachEvent() メソッドは主に IE のビヘイビアに使用されます。標準的な HTML ページでブラウザ間の互換性を保つには、要素オブジェクトのイベントハンドラープロパティを使用してイベントをバインドする方法が適しています。attachEvent() メソッドを使用してイベントハンドラーをバインドした場合は、detachEvent() メソッドを使用してバインドを解除できます。 |
|
パラメータ | |
|
|
戻り値 | |
ブール値。バインドに成功した場合は true を返します。 |
clearAttributes() | NN なし IE 5(Win) DOM なし |
id 属性と name 属性 (指定されている場合) を除いたすべての属性を現在の要素から削除します。削除された要素の属性によって影響を受けるすべての表示特性も要素に適用されなくなります。 |
|
パラメータ | |
なし |
|
戻り値 | |
なし |
click() | NN 2 IE 4 DOM 1 |
ユーザーによる要素のクリック操作をシミュレートします。IE 4 以降および Navigator 4 以降では、onclick イベントを呼び出します。IE 4 と Netscape 6 以前のブラウザでは、click() メソッドまたは onclick イベントを使用できない要素もあります。また、ユーザーのクリックで表示状態が変わる要素にも、スクリプトによるクリックで同じ状態変化をシミュレートできないものがあります。たとえば、Macintosh のブラウザでは、スクリプトでチェックボックスに対して click() メソッドを呼び出しても、チェックボックスのチェック状態を変更できないバージョンがあります。この場合は、onclick イベントハンドラーが何らかのコードを実行する場合のみ click() メソッドを呼び出し、チェックボックスの checked プロパティを適切に設定してください。 |
|
パラメータ | |
なし |
|
戻り値 | |
なし |
getAttribute() | NN 6 IE 4 DOM 1 |
getAttribute(attributeName) getAttribute(attributeName[,caseSensitivity]) | |
現在の要素内の名前付き属性の値を返します。属性がオブジェクトモデルでプロパティとして反映されている場合、このメソッドはオブジェクトのプロパティを読み取るときと同じ値を返します。W3C DOM では、要素オブジェクトの属性 (つまりプロパティ) の値を読み取る場合には、このメソッドが推奨されています。 |
|
現在のブラウザでは、パラメータとして渡す属性名の大文字と小文字は区別されません。ただし、IE では、属性名の大文字と小文字の区別を指定するための 2 番目のパラメータ (省略可能) を設定できます。これで、同じ属性名を大文字と小文字を変えて別の属性として使用することもできますが、あまり良い方法ではありません。 |
|
属性に値を設定し、新しい「属性/値」のペアを作成する方法については、setAttribute() メソッドを参照してください。 |
|
パラメータ | |
|
|
戻り値 | |
W3C DOM と Netscape 6 では、属性値は文字列データタイプとしてのみ保持されます。ただし、IE では、属性値は文字列、数値、ブール値のいずれかとして返されます。 |
getAttributeNode() | NN 6 IE 6 DOM 1 |
getAttributeNode(attributeName) | |
名前に関連付けられている属性ノード (Attr オブジェクト) への参照を返します。このノードタイプは、要素の attributes プロパティによって返される配列を挿入するものと同じ種類ですが、getAttributeNode() メソッドを使用すると名前によって Attr ノードオブジェクトに直接アクセスできます。XML ドキュメントでは、要素に関連付けられている重要なデータを属性によって渡すことができるので、さらに便利です。ノードタイプの詳細については、Attr オブジェクトを参照してください。 |
|
パラメータ | |
|
|
戻り値 | |
Attr オブジェクトへの参照 |
getAttributeNS() | NN 6 IE なし DOM 2 |
getAttributeNS("namespaceURI", "localName") | |
現在の要素内で一致する名前空間 URI を持つローカル名の属性の値を返します。このメソッドのビヘイビアは getAttribute() に似ていますが、名前空間の仕様に基づいてラベル付けされた XML ドキュメントの属性が含まれます。次に示す簡単な XML ドキュメントは、libBook:title 要素の属性の名前空間を使用します。 |
|
libBook:rareBooks 属性の値を取得するには、要素のメソッド内で、次のパラメータを使用して getAttributeNS() メソッドを呼び出します。 |
|
パラメータ | |
|
|
戻り値 | |
W3C DOM と Netscape 6 では、属性値は文字列データタイプとしてのみ保持されます。 |
getElementsByTagName() | NN 6 IE 5 DOM 1 |
getElementsByTagName("tagName") | |
現在の要素の子孫要素のうち、タグ名がメソッドのパラメータと一致するすべての子孫要素から成る配列を返します。配列の要素には、子や孫などがソースコード順序で格納されます。現在の要素は、配列に含まれません。一致するものがない場合、配列の長さは 0 です。 |
|
Netscape 6、Macintosh 版 IE 5、および Windows 版 IE 6 では、引用符で囲んだアスタリスクをワイルドカード文字としてパラメータに指定できるので、タグ名に関わらず、すべての子孫要素から成る配列を返すことができます。ただし、ブラウザによってはドキュメントツリー構造がわずかに異なる場合があるので、ワイルドカードのパラメータによる配列の長さが一致しないことがあります。 |
|
パラメータ | |
|
|
戻り値 | |
要素参照の配列。要素が 0 の場合もあります。 |
getElementsByTagNameNS() | NN 6 IE なし DOM 2 |
getElementsByTagNameNS("namespaceURI", "localName") | |
現在の要素の子孫要素のうち、メソッドの 2 番目のパラメータとローカル名が一致し、1 番目のパラメータと名前空間 URI が一致するすべての子孫要素から成る配列を返します。名前空間 URI は、ドキュメント内の別の場所で名前空間宣言として割り当てられています。配列の要素には、子や孫などがソースコード順序で格納されます。現在の要素は、配列に含まれません。一致するものがない場合、配列の長さは 0 です。主に XML ドキュメントに適用されます。 |
|
パラメータ | |
|
|
戻り値 | |
要素参照の配列。要素が 0 の場合もあります。 |
hasAttribute() | NN 6 IE なし DOM 1 |
hasAttribute("attributeName") | |
メソッドのパラメータに一致する名前を持つ属性が現在の要素にある場合、ブール値 true を返します。 |
|
パラメータ | |
|
|
戻り値 | |
true または false のブール値 |
hasAttributeNS() | NN 6 IE なし DOM 2 |
hasAttributeNS("namespaceURI", "localName") | |
現在の要素に、メソッドの 2 番目のパラメータと一致するローカル名を持ち、1 番目のパラメータと一致する名前空間 URI を持つ属性がある場合、ブール値 true を返します。名前空間 URI は、ドキュメント内の別の場所で名前空間宣言として割り当てられています。 |
|
パラメータ | |
|
|
戻り値 | |
true または false のブール値 |
insertAdjacentElement() | NN なし IE 5(Win) DOM なし | |||||||||
insertAdjacentElement("where", elementObjectReference) | ||||||||||
現在の要素の位置を基準として指定された位置に要素オブジェクトを挿入します。通常、挿入される要素オブジェクトは、document.createElement() などを使用して個別に作成されます。または、ドキュメントツリーに既に存在するオブジェクトへの参照である場合もあります。基本的に、メソッドは insertAdjacentElement() メソッドを使用して、オブジェクトを新しい場所に移動します。 |
||||||||||
移動先は 1 番目の属性によって指定します。次の 4 つの値のいずれかを使用して、挿入場所を決定します。 |
||||||||||
ドキュメント要素ツリーに対する効果は明確に定義されていますが、現在の要素オブジェクトおよび挿入する要素オブジェクトとして使用するインライン要素とブロック要素の組み合わせにより、表示される結果が異なります。div 要素や p 要素など、ブロックレベルの要素を挿入すると、挿入した要素は、次の行で、ブロックレベルの配置コンテキスト (body 要素や td 要素など) の左端に表示されます。要素に W3C DOM の appendChild() メソッドを適用すると、insertAdjacentElement() メソッドで beforeEnd の位置パラメータを指定する場合と同じになります。 |
||||||||||
|
||||||||||
パラメータ | ||||||||||
|
||||||||||
戻り値 | ||||||||||
挿入される要素オブジェクトへの参照 |
insertAdjacentHTML() | NN なし IE 4 DOM なし |
insertAdjacentHTML("where", HTMLText) | |
要素に存在する HTML の位置を基準として指定された位置にテキスト文字列を挿入します。挿入されるテキストに HTML タグが含まれる場合、ブラウザはタグを解釈して表示します。Macintosh 版 IE 4 では、このメソッドは一部のオブジェクトでのみサポートされます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
insertAdjacentText() | NN なし IE 4 DOM なし |
insertAdjacentText("where", text) | |
要素に存在する HTML の位置を基準として指定された位置にテキストを挿入します。挿入されるテキストに HTML タグが含まれている場合、タグは文字としてページに表示されます。Macintosh 版 IE 4 では、このメソッドは一部のオブジェクトでのみサポートされます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
mergeAttributes() | NN なし IE 5(Win) DOM なし |
mergeAttributes(modelElementReference[, preserveIDs]) | |
パラメータで指定した要素から現在の要素に、属性の「名前/値」のペアをコピーします。これは、既存の要素から新しく作成した要素に、多くの属性をコピーする場合に便利です。デフォルトでは、id 属性と name 属性はコピーされないので、2 つの要素に個別の識別子が保持され、スクリプトやフォームで使用できます。Windows 版 IE 5.5 以降では、省略可能な 2 番目のブール値パラメータを false に設定すると、id 属性と name 属性もコピーされます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
removeAttribute() | NN 6 IE 4 DOM 1 |
removeAttribute("attributeName") removeAttribute("attributeName"[, caseSensitivity]) | |
名前付き属性を現在の要素から削除します。IE 4 では setAttribute() メソッドを使用して追加された属性のみを削除できますが、IE 5 以降および Netscape 6 ではそのような制限は適用されません。属性を削除してもブラウザで表示されるソースコードは変更されませんが、ブラウザで表示される要素には反映されます。また、属性の削除後には、属性値やノードを使用できなくなります。 |
|
パラメータ | |
|
|
戻り値 | |
IE では、成功した場合に true、指定された属性が存在しなかった場合は false を返します。Netscape 6 (W3C DOM の仕様) では、戻り値はありません。 |
removeAttributeNode() | NN 6 IE 6 DOM 1 |
removeAttributeNode(attrObjectReference) | |
既存の Attr ノードオブジェクトへの参照パラメータによって示される現在の要素から属性を削除します。スクリプトが属性名ではなく Attr ノードオブジェクトへの参照のみを持つ場合に、要素から属性を削除する代替手段となります。属性ノードを削除してもブラウザで表示されるソースコードは変更されませんが、ブラウザで表示される要素には反映されます。属性の削除後には、属性値やノードを使用できなくなります。 |
|
パラメータ | |
|
|
戻り値 | |
削除された Attr オブジェクトへの参照。ドキュメントツリーの一部ではなくなりますが、ドキュメントツリーの別の位置へ挿入できます。 |
removeAttributeNS() | NN 6 IE なし DOM 2 |
removeAttributeNS("namespaceURI", "localName") | |
現在の要素内で一致する名前空間 URI を持つローカル名の属性を削除します。このメソッドのビヘイビアは removeAttribute() に似ていますが、名前空間の仕様に基づいてラベル付けされた XML ドキュメントの属性が含まれます。次に示す簡単な XML ドキュメントは、libBook:title 要素の属性の名前空間を使用します。 |
|
libBook:rareBooks 属性の値を削除するには、要素に対するメソッド内で、次のパラメータを使用して removeAttributeNS() メソッドを呼び出します。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
removeBehavior() | NN なし IE 5(Win) DOM なし |
removeBehavior(behaviorID) | |
現在の要素と、addBehavior() メソッドを使用して作成されたビヘイビアとの関連付けを削除します。パラメータには addBehavior() メソッドで返された値を指定するため、このメソッドを呼び出すまでの間、その値を変数として保持しておく必要があります。 |
|
パラメータ | |
|
|
戻り値 | |
ブール値。削除に成功した場合は true、それ以外の場合は false を返します。 |
scrollIntoView() | NN 7 IE 4 DOM なし |
scrollIntoView([showAtTop]) | |
現在の要素を含むコンテンツをスクロールし、要素が表示されるようにします。デフォルトのビヘイビアでは、要素の上端がスクロール領域の上端と一致するように要素が表示されます。ただし、必要に応じて、要素をスクロール領域の下端に揃えることもできます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
setActive() | NN なし IE 5.5(Win) DOM なし |
現在の要素をアクティブ要素にします。このとき、アクティブになった要素を表示するためにページをスクロールする処理は行われません。メソッドがウィンドウオブジェクトの境界をまたいで呼び出された場合、ウィンドウやフレーム間でフォーカスが移動することもありません。ただし、メソッドが呼び出されると、要素は onfocus イベントを受け取ります。 |
|
パラメータ | |
なし |
|
戻り値 | |
なし |
setAttribute() | NN 6 IE 4 DOM 1 |
setAttribute("attributeName", value) setAttribute("attributeName", value[, caseSensitivity]) | |
現在の要素内の名前付き属性の値を設定します。属性がオブジェクトモデルでプロパティとして反映されている場合、このメソッドはオブジェクトのプロパティに値を設定するときと同じビヘイビアを実行します。この場合でも、W3C DOM では属性値の調整方法として setAttribute() メソッドが推奨されています。また、属性値の読み取り方法としては getAttribute() メソッドが推奨されています。 |
|
要素にまだ属性が設定されていない場合は、setAttribute() メソッドが「名前/値」のペアとして属性を要素に追加します。ただし、IE 4 〜 IE 5.5 を除いて、新しく追加された属性は要素の attributes コレクションの一部として返されません。 |
|
IE では、属性名をオブジェクトのプロパティ名として扱います。このため、属性と対応するプロパティ名との間に不一致が存在する場合 (たとえば、class と className など)、IE ではプロパティ名を必要とします。IE および Navigator の両方で要素の class 属性に新しい値を設定するには、コードを分岐してブラウザごとに 1 回ずつメソッドを呼び出し、使用されていない className 属性が Navigator の要素に追加されないようにする必要があります。W3C DOM の手法をサポートするブラウザでは、オブジェクトの検出を行うことができるように、要素の getAttribute("class") メソッドに文字列タイプを返します。 |
|
Netscape 6 (W3C DOM 仕様) では、属性に設定する値をすべて文字列にする必要があります。IE では数値やブール値などのデータタイプも使用できますが、たとえば数値を文字列形式に設定すると、データタイプが変換され、getAttribute() は IE で優先されるデータタイプで値を返します。Netscape 6 では、すべての属性値が文字列です。 |
|
Netscape 6 の属性名では大文字と小文字が区別されませんが、XHTML の傾向に合わせて、すべて小文字の属性名を使用することをお勧めします。IE では、デフォルトで、このメソッドの属性名については大文字と小文字が区別されます。省略可能な 3 番目のパラメータを使用すると、属性名の大文字と小文字を区別するかどうかを設定できます。混乱を招く恐れがあるため、別々の属性に、スペルが同じで大文字と小文字が異なる属性名を付けることは避けてください。すべてのコードですべて小文字の属性名を使用する場合は、W3C DOM に準拠したままで、3 番目の IE 用パラメータを省略することができます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |
setAttributeNode() | NN 6 IE 6 DOM 1 |
setAttributeNode(attrObjectReference) | |
現在の要素内に属性を挿入または置換します。パラメータは、新しく作成される Attr ノードオブジェクトへの参照、またはドキュメントツリー内の別の要素からの参照となります。setAttributeNode() メソッドが呼び出されると、ブラウザは最初に新しい属性名と一致する既存の属性名を検索します。一致が見つかると、新しい属性は元の属性と置き換わります。見つからなかった場合、新しい属性は要素の属性に追加されます。属性ノードを追加してもブラウザで表示されるソースコードは変更されませんが、属性が要素の表示形態に影響を与える場合は、ブラウザで表示される要素に反映されます。新しい属性の値は、getAttribute() メソッドによって取得されます。 |
|
パラメータ | |
|
|
戻り値 | |
置き換えられた Attr オブジェクトへの参照。この参照は、ドキュメントツリーの一部ではなくなります。挿入の場合は null が返されます。 |
setAttributeNodeNS() | NN 6 IE なし DOM 2 |
setAttributeNodeNS(attrObjectReference) | |
現在の要素内に属性を挿入または置換します。パラメータは、新しく作成される Attr ノードオブジェクトへの参照、またはドキュメントツリー内の別の要素からの参照となります。setAttributeNodeNS() メソッドが呼び出されると、ブラウザは最初に新しい属性のローカル名と名前空間 URI のペアと一致する既存の属性のローカル名と名前空間 URI を検索します。一致が見つかると、新しい属性は元の属性と置き換わります。見つからなかった場合、新しい属性は要素の属性に追加されます。属性ノードを追加してもブラウザで表示されるソースコードは変更されませんが、属性が要素の表示形態に影響を与える場合は、ブラウザで表示される要素に反映されます。新しい属性の値は、getAttributeNS() メソッドによって取得されます。 |
|
パラメータ | |
|
|
戻り値 | |
置き換えられた Attr オブジェクトへの参照。この参照は、ドキュメントツリーの一部ではなくなります。挿入の場合は null が返されます。 |
isMultiLine | NN なし IE 5.5(Win) DOM なし |
読み取り専用 | |
現在の要素でコンテンツが複数行にまたがることを許可されているかどうかを示します。ほとんどのテキストコンテナでは複数行が許可されていますが、それ以外の種類の要素 (テキスト入力要素など) では 1 行のみの表示に制限されています。 |
|
例 | |
if (document.getElementById("elementID").isMultiLine) {
// process the element as a potential multiple-line element
}
|
|
値 | |
true または false のブール値 |
|
既定値 | |
要素の既定値 |
offsetHeight、offsetWidth | NN 6 IE 4 DOM なし |
読み取り専用 | |
これらのプロパティは、要素のコンテンツの高さと幅を示します。ただし、IE では OS ごとのバージョンや、DOCTYPE 宣言によって切り替えられる互換モードによって、要素のボーダーと余白がわずかに異なります。これらの値には、ボーダーと余白の長さを含み、マージンを含まない傾向があります。W3C DOM の一部ではありませんが、Netscape 6 では便宜上実装されています。詳細については、本章の 9.2 節を参照してください。 |
|
例 | |
var midpoint = document.getElementById("elementID").offsetWidth/2;
|
|
値 | |
ピクセル数を示す整数 |
|
既定値 | |
要素によって異なります。 |
offsetLeft、offsetTop | NN 6 IE 4 DOM なし |
読み取り専用 | |
これらのプロパティは、要素領域の左上隅の座標を示します。ただし、IE では OS ごとのバージョンや、DOCTYPE 宣言によって切り替えられる互換モードによって、offsetParent 要素に対する座標系コンテキストがわずかに異なります。W3C DOM の一部ではありませんが、Netscape 6 では便宜上実装されています。詳細については、本章の 9.2 節を参照してください。配置要素については、要素の style プロパティを設定して、ドキュメントやブラウザの表示領域における位置を制御する必要があります。 |
|
例 | |
if (document.getElementById("elementID").offsetLeft <= 20 && document.getElementById("elementID").offsetTop <=40) { ... } |
|
値 | |
ピクセル数を示す整数 |
|
既定値 | |
要素によって異なります。 |
scopeName、tagUrn | NN なし IE 5(Win) DOM なし |
読み取り専用 | |
scopeName プロパティは、XML 名前空間を採用するカスタム要素について、名前空間にタグ名を関連付ける識別子を返します。名前空間は、xmlns 属性によって、ドキュメントの他の場所で定義されます。すべての標準 HTML 要素は、このプロパティに HTML という値を返します。tagUrn プロパティは、名前空間に指定されている URI を返します。W3C DOM で対応するプロパティは、prefix および namespaceURI です。 |
|
例 | |
var allTitles = document.getElementsByTagName("title"); for (var i = 0; i < allTitles.length; i++) { if (allTitles[i].scopeName == "libBook" && allTitles[i].tagUrn.indexOf("catalog.umv.edu") != -1) { // process title elements from the desired namespace here } } |
|
値 | |
文字列 |
|
既定値 | |
scopeName に対しては HTML、tagUrn に対しては空の文字列 |
setAttributeNS() | NN 6 IE なし DOM 2 |
setAttributeNS("namespaceURI", "qualifiedName", "value") | |
現在の要素内に属性を挿入または置換します。パラメータとして渡された名前空間 URI と修飾名の両方が一致する要素属性が見つかった場合は、新しい値が既存の属性に設定されます。一致するものがない場合は、属性が要素に追加されます。 |
|
パラメータ | |
|
|
戻り値 | |
なし |