table | NN 6 IE 4 DOM 1
table オブジェクトは table 要素に対応するオブジェクトです。table オブジェクトに関連するその他のオブジェクトは、caption、col、colgroup、tbody、td、tfoot、thead、および tr です。
相当する HTML コード
    <table>
オブジェクト参照
    [window.]document.getElementById("elementID")
オブジェクト固有のプロパティ
align | background | bgColor | border
borderColor | borderColorDark | borderColorLight | caption
cellPadding | cells[] | cellSpacing | cols
dataPageSize | frame | height | rows[]
rules | summary | tbodies[] | tFoot
tHead | width |  |
オブジェクト固有のメソッド
createCaption() | createTFoot() | createTHead() | deleteCaption()
deleteRow() | deleteTFoot() | deleteTHead() | insertRow()
lastPage() | moveRow() | nextPage() | previousPage()
refresh() |  |  |
オブジェクト固有のイベントハンドラープロパティ
なし

align | NN 6 IE 4 DOM 1
| 読み書き
要素のコンテナ内での要素の横方向の位置揃えを示します。
例
    document.getElementById("myTable").align = "center";
値
横方向の位置揃えを指定する center、left、right のいずれかの定数
既定値
left

background | NN なし IE 4 DOM なし
| 読み書き
テーブルの背景イメージの URL を示します。要素に backgroundColor が設定されている場合、イメージが読み込みに失敗したときには、その背景色が表示されます。正常に読み込まれたときは、背景色の上にイメージが表示されます。
例
    document.getElementById("myTable").background = "images/watermark.jpg";
値
背景イメージファイルの絶対 URL または相対 URL
既定値
なし

bgColor | NN 6 IE 4 DOM 1
| 読み書き
要素の背景色を示します。この色の設定は、スタイルシートの backgroundColor プロパティには反映されません。bgcolor 属性や bgColor プロパティの設定に色の名前の英単語を使用した場合でも、戻り値では常に RGB 値の 16 進数表記が返されます。
例
    document.getElementById("myTable").bgColor = "yellow";
値
RGB 値の 16 進数表記または色の名前の英単語。使用できる色の名前については、付録 A を参照してください。
既定値
ブラウザと OS によって異なります。

border | NN 6 IE 4 DOM 1
| 読み書き
テーブルの周りのボーダーの太さをピクセル数で示します。これはデフォルトで 3D 表示されるボーダーであり、スタイルシートで作成されるボーダーとは異なります。
例
    document.getElementById("myTable").border = 4;
値
整数。0 に設定するとボーダーがまったく表示されません。
既定値
0

borderColor | NN なし IE 4 DOM なし
| 読み書き
テーブルのボーダーの色を示します。Internet Explorer では、セルの内側のボーダーを構成する 4 辺すべてにこの色が適用されます。したがって、隣り合っているセルの色が衝突することはありません。
例
    document.getElementById("myTable").borderColor = "salmon";
値
RGB 値の 16 進数表記または色の名前の英単語。空の文字列を設定した場合、"#000000" (黒) として解釈されます。使用できる色の名前については、付録 A を参照してください。
既定値
OS によって異なります。

borderColorDark、borderColorLight | NN なし IE 4 DOM なし
| 読み書き
Internet Explorer では、ページの背景色やデフォルト色の周りに明るい線と暗い線を適切に配置することによってテーブルボーダーの 3D 効果が作成されます。borderColorDark (セルの左と上の辺) プロパティと borderColorLight (セルの右と下の辺) プロパティに値を設定して、ボーダーの暗い線と明るい線に使用する色を個別に制御できます。
通常の場合、この 2 つのプロパティにはお互いの補色を設定します。ただし、必ずしも borderColorDark に暗い色を設定する必要はありません。これらの属性はセルの特定の辺を制御するためのもので、各属性によってボーダーのどの辺が設定されるかが分かるような名前が付いているだけです。
例
    document.getElementById("myTable").borderColorDark = "blue";
    document.getElementById("myTable").borderColorLight = "cornflowerblue";
値
RGB 値の 16 進数表記または色の名前の英単語。空の文字列を設定した場合、"#000000" (黒) として解釈されます。使用できる色の名前については、付録 A を参照してください。
既定値
OS によって異なります。

caption | NN 6 IE 5(Mac)/4(Win) DOM 1
| 読み取り専用
テーブル内にネストされている caption 要素への参照を返します。この参照を使って caption オブジェクトのプロパティやメソッドにアクセスできます。Netscape 6 では、新しい caption 要素を作成して、table の caption プロパティにこの新しい要素への参照を設定することにより、プロパティを読み書き可能にすることができます (ただし、通常は createCaption() メソッドを使用します)。caption プロパティが返す caption オブジェクトのプロパティは、すべてのブラウザで変更できます。
例
    var capText = document.getElementById("myTable").caption.innerHTML;
値
オブジェクトへの参照
既定値
なし

cellPadding | NN 6 IE 4 DOM 1
| 読み書き
テーブルの (表示または非表示の) セルのボーダーとコンテンツとの間に空ける間隔を示します。このプロパティはセルの中にあるスペースに適用されます。このプロパティは多少変更しても、テーブルでボーダーが表示されない場合には外観があまり変わりません。ボーダーを表示しない場合には cellSpacing プロパティを使ってセルの間隔を調整できます。
例
    document.getElementById("myTable").cellPadding = "15";
値
長さをピクセル数またはパーセント値で表す文字列
既定値
0

cells | NN なし IE 5(Win) DOM なし
| 読み取り専用
テーブル内にあるすべての td 要素のコレクションを返します。配列内の要素は td 要素のソースコード順序に従って並んでいます。このプロパティは tr 要素 (行ごと) に対して広く使用されます。
例
    var totCells = document.getElementById("myTable").cells.length;
値
cells コレクションオブジェクトへの参照
既定値
長さ 0 の配列

cellSpacing | NN 6 IE 4 DOM 1
| 読み書き
各テーブルセルの外辺の間に空ける間隔を示します。テーブルにボーダーがある場合、cellSpacing の設定によってセルの間に表示されるボーダーの太さが決まります。テーブルにボーダーを表示しない場合でも、セルの間隔を空けたり、セルの間隔とセルの余白とを組み合わせたりすることにより、テーブルの読みやすさが向上します。
例
    document.getElementById("myTable").cellSpacing = "5";
値
長さをピクセル数またはパーセント値で表す文字列
既定値
テーブルボーダーなしの場合は 0、テーブルボーダーがある場合は 2

cols | NN なし IE 4 DOM 1
| 読み書き
テーブルの列数を示します。これに相当する Internet Explorer の cols 属性は、ブラウザがテーブルを表示するときに使用されます。この属性が設定されていない場合、ブラウザはダウンロードされたすべての tr および td 要素を解釈した結果に基づいてテーブルの列数を決定します。このプロパティは読み書き可能ですが、このプロパティでテーブルの列の構成を変更することはできません。本章冒頭の col オブジェクトも参照してください。
例
    document.getElementById("myTable").cols = 5;
値
整数
既定値
なし

dataPageSize | NN なし IE 4 DOM なし
| 読み書き
IE のデータバインディングと共に使用して、テーブルで必要な行数をブラウザに指定します。このプロパティはテーブルに表示するデータソースレコードの数を設定します。ページにレコードグループを順次表示する方法については、lastPage()、nextPage()、previousPage() の各メソッドを参照してください。
例
    document.getElementById("inventoryTable").dataPageSize = 10;
値
整数
既定値
なし

">
frame NN 6 IE 4 DOM 1

読み書き

テーブルの外にボーダー (border 属性または border プロパティで設定) を表示する場合、どの辺を表示するかを示します。このプロパティは、テーブル内部にあるセル間のボーダーには影響を与えません。

例

    document.getElementById("orderForm").frame = "hsides";

値

次のいずれかのフレーム定数を示す文字列。大文字と小文字は区別されません。

- テーブルボーダーの上辺のみを表示します。
- テーブルボーダーの下辺のみを表示します。
- テーブルボーダーの 4 辺すべてを表示します。これは box と同じです。
- テーブルボーダーの 4 辺すべてを表示します。これは border と同じです。
- テーブルボーダーの上と下の辺のみを表示します。これは外観のよい設定です。
- テーブルボーダーの左辺のみを表示します。
- テーブルボーダーの右辺のみを表示します。
- テーブルボーダーをまったく表示しません。HTML 4 での既定値です。
- テーブルボーダーの左と右の辺のみを表示します。

above

テーブルボーダーの上辺のみを表示します。

below

テーブルボーダーの下辺のみを表示します。

border

テーブルボーダーの 4 辺すべてを表示します。これは box と同じです。

box

テーブルボーダーの 4 辺すべてを表示します。これは border と同じです。

hsides

テーブルボーダーの上と下の辺のみを表示します。これは外観のよい設定です。

lhs

テーブルボーダーの左辺のみを表示します。

rhs

テーブルボーダーの右辺のみを表示します。

void

テーブルボーダーをまったく表示しません。HTML 4 での既定値です。

vsides

テーブルボーダーの左と右の辺のみを表示します。

既定値

border=0 の場合は void、border がその他の値の場合は border

height、width | NN 6 (width のみ) IE 4 DOM 1 (width のみ)
| 読み書き
要素の高さと幅をピクセル数で示します。これらの値に加えた変更は、ページに再フローされたコンテンツに直ちに反映されます。Netscape 6 (および W3C DOM) では、テーブルの高さは各行で最も高いセルの高さの合計と見なされるため、指定できるのは width プロパティのみです。
例
    document.getElementById("myTable").height = 250;
値
整数
既定値
なし

rows | NN 6 IE 4 DOM 1
| 読み取り専用
テーブル内にある tr 要素のコレクションを返します。テーブルのセクション (tbody、tfoot、thead 要素オブジェクト) ごとに行のグループを取得することもできます 。
例
    var allTableRows = document.getElementById("myTable").rows;
値
rows コレクションオブジェクトへの参照
既定値
長さ 0 の配列

">
rules NN 6 IE 4 DOM 1

読み書き

ブラウザでテーブル内にあるセル間のボーダーを表示する場合にその表示位置を示します。テーブル内にボーダーを設定して各セル間に区切り線を表示するだけでなく、ボーダー、列、および特定のセルグループ (thead、tbody、tfoot、colgroup、col など) の間だけにボーダーを設定することもできます。セル間にボーダーを表示するには、border 属性にブール値または特定のボーダーサイズが設定されている必要があります。このプロパティは styleSheet オブジェクトの rules[] コレクションとは異なります。このプロパティをスクリプトで変更しても、特に Netscape 6 の初期バージョンなどでは、目的の結果が得られない場合があります。

例

    document.getElementById("myTable").rules = "groups";

値

次のいずれかの規則定数を示す文字列。大文字と小文字は区別されません。

- すべてのセルの周りにボーダーを表示します。
- 各列の間のみにボーダーを表示します。
- thead、tfoot、tbody、colgroup、または col の各要素で定義されたセルグループ間のみにボーダーを表示します。
- テーブル内にボーダーをまったく表示しません。
- 各行の間のみにボーダーを表示します。

all

すべてのセルの周りにボーダーを表示します。

cols

各列の間のみにボーダーを表示します。

groups

thead、tfoot、tbody、colgroup、または col の各要素で定義されたセルグループ間のみにボーダーを表示します。

none

テーブル内にボーダーをまったく表示しません。

rows

各行の間のみにボーダーを表示します。

既定値

border=0 の場合は none、border がその他の値の場合は all

summary | NN 6 IE 6 DOM 1
| 読み取り専用
HTML 4 の summary 属性に対応するプロパティですが、主要なブラウザでは特別な効果は得られません。ただし、ソースコードでこのプロパティに値を設定することにより、このプロパティを読み取るスクリプトにデータを渡すことができます。
例
    var data = document.getElementById("myTable").summary;
値
文字列
既定値
空の文字列

tBodies[] | NN 6 IE 5(Mac)/4(Win) DOM 1
| 読み取り専用
現在のテーブル内にある tBody オブジェクトのコレクションを返します。table 要素内には、少なくとも 1 つの (明示または暗黙の) tBody オブジェクトがネストされています。
例
    var bodSections = document.getElementById("myTable").tBodies;
値
tBody オブジェクトコレクションへの参照
既定値
長さ 1 の配列

tFoot | NN 6 IE 5(Mac)/4(Win) DOM 1
| 読み取り専用
テーブルに対して tfoot 要素オブジェクトが定義されている場合、そのオブジェクトへの参照を返します。tfoot 要素がない場合には、null が返されます。必要であれば、この参照を使って tfoot 要素オブジェクトのプロパティやメソッドにアクセスできます。このプロパティは Win32 版 IE 4 でのみ使用できます。
例
    var tableFootTxt = document.getElementById("myTable").tFoot.firstChild.nodeValue;
値
tfoot 要素オブジェクトへの参照
既定値
null

tHead | NN 6 IE 5(Mac)/4(Win) DOM 1
| 読み取り専用
テーブルに対して thead 要素オブジェクトが定義されている場合、そのオブジェクトへの参照を返します。thead 要素がない場合には、null が返されます。必要であれば、この参照を使って thead 要素オブジェクトのプロパティやメソッドにアクセスできます。このプロパティは Win32 版 IE 4 でのみ使用できます。
例
    var tableHeadTxt = document.getElementById("myTable").tHead.firstChild.nodevalue;
値
thead 要素オブジェクトへの参照
既定値
null

width |
height を参照してください。

createCaption()、deleteCaption() | NN 6 IE 4 DOM 1
現在の table 要素内にネストされている caption 要素を追加または削除します。キャプションがない場合は作成用のメソッドは空の要素を作成します。その後、スクリプトで空の要素にキャプションのテキストを追加します (要素のコンテンツに変更を加える一般的な方法を使用します)。キャプションが存在する場合、このメソッドは無視され、既存の caption 要素への参照が返されます。
パラメータ
なし
戻り値
createCaption() の場合は新しいキャプション要素への参照、deleteCaption() の場合はなし

createTFoot()、createTHead()、deleteTFoot()、deleteTHead() | NN 6 IE 4 DOM 1
現在の table 要素内にネストされている thead 要素または tfoot 要素を追加または削除します。テーブルにヘッダッセクションまたはフッタセクションが存在しない場合は作成用のメソッドが空の要素を作成します。その後、スクリプトで空の要素に行を追加します (thead.insertRow() または tfoot.insertRow() メソッドを使用します)。目的のテーブルセクションが存在する場合、このメソッドは無視され、既存の thead 要素または tfoot 要素への参照が返されます。
パラメータ
なし
戻り値
createTFoot() および createTHead() の場合は新たに作成された要素への参照、deleteTHead() およびdeleteTFoot() の場合はなし

deleteRow() | NN 6 IE 4 DOM 1
deleteRow(index) |
現在の table 要素内にネストされている tr 要素を削除します。パラメータには、rows コレクション内の削除するアイテムを示す 0 から始まる整数を指定します。新しいコンテンツまたはソートしたコンテンツをもう一度テーブルに読み込むには、deleteRow() メソッドを反復的に呼び出してテーブル (またはテーブルセクション) を空にします。
    while (tableReference.rows.length> 0) {
         tableReference.deleteRow(0);
    }
パラメータ
ソースコード順序 (現在の要素内でのネスト順) で並ぶ tr 要素のうち、指定する要素を示す 0 から始まる整数
戻り値
なし

insertRow() | NN 6 IE 4(Win) DOM 1
insertRow(index) |
現在の table 要素内にネストされている tr 要素を挿入します。パラメータには、rows コレクション内の新しい行を挿入する位置を示す 0 から始まる整数インデックスを指定します。Internet Explorer では、-1 を指定することにより、コレクションの末尾への行の追加を簡略化できます。行を追加すると空の要素が追加されます。insertCell() メソッドを使ってこの要素にセルを追加してください。Macintosh 版 IE (バージョン 5.1 を含む) では、テーブルに行とセルを追加するスクリプトが正常に機能せず、巨大な行とセルが作成されます。ネストされていないテーブルの場合には、table オブジェクト (および関連するオブジェクト) の便利なメソッドを使用する代わりに、ドキュメントツリー内でノードを作成および挿入する一般的な方法を使用することもできます。
パラメータ
rows コレクション内の新しい行を挿入する位置の下にある行を示す 0 から始まる整数
戻り値
新たに挿入された行への参照

lastPage()、nextPage()、previousPage() | NN なし IE 4/5 DOM なし
データソースから最後、次、または前のレコードグループを読み込んで dataPageSize プロパティに設定されたレコード数を取得するようにデータバインディング機能に指示します。lastPage() メソッドは Windows 版 IE 5 以降で使用できます。
パラメータ
なし
戻り値
なし

moveRow() | NN なし IE 5(Win) DOM なし
moveRow(indexToMove、destinationIndex) |
テーブル内の行を元の位置から別の位置へ移動します。最初のパラメータは、rows コレクション内の移動する行を示す 0 から始まるインデックスです。2 番目のパラメータは、移動先となる行の下にある行を示すインデックスです。table オブジェクトの moveRow() メソッドの場合、パラメータに指定するインデックスでは 1 行目からカウントするので、移動したくない th 要素も含まれてしまう場合があります。カウントの対象をテーブルセクション内のみに制限するには、tbody オブジェクトのこのメソッドを呼び出してください。
パラメータ
移動する行を示す 0 から始まる整数 移動先となる行の下にある行を示す 0 から始まる整数
戻り値
移動された行への参照

refresh() | NN なし IE 4 DOM なし
データソースから現在のページデータを再ロードするようにデータバインディング機能に指示します。テーブルにデータベースから取得するデータが頻繁に変更される場合、setTimeout() ループを作成して document.getElementById("myTable").refresh() を呼び出し、ユーザーの好みの頻度でデータベースからの情報を更新することができます。
パラメータ
なし
戻り値
なし

clientHeight、clientWidth | NN 7 IE 4 DOM なし
| 読み取り専用
これらのプロパティは、要素のコンテンツの高さと幅を示します。ただし、IE では OS ごとのバージョンや、DOCTYPE 宣言によって切り替えられる互換モードによって、要素の余白がわずかに異なります。Macintosh 版 IE では、すべての要素タイプで使用できません。Netscape 7 では、要素のコンテンツが表示可能領域に収まる場合、値が 0 になります。表示領域に収まらない場合、値は表示可能領域のサイズとなります。たとえば、document.body 要素に対するブラウザウィンドウのコンテンツ領域です。詳細については、本章の 9.2 節を参照してください。
例
    var midHeight = document.body.clientHeight/2;
値
ピクセル数を示す整数
既定値
0

clientHeight、clientWidth | NN 7 IE 4 DOM なし
| 読み取り専用
これらのプロパティは、要素のコンテンツの高さと幅を示します。ただし、IE では OS ごとのバージョンや、DOCTYPE 宣言によって切り替えられる互換モードによって、要素の余白がわずかに異なります。Macintosh 版 IE では、すべての要素タイプで使用できません。Netscape 7 では、要素のコンテンツが表示可能領域に収まる場合、値が 0 になります。表示領域に収まらない場合、値は表示可能領域のサイズとなります。たとえば、document.body 要素に対するブラウザウィンドウのコンテンツ領域です。詳細については、本章の 9.2 節を参照してください。
例
    var midHeight = document.body.clientHeight/2;
値
ピクセル数を示す整数
既定値
0

scrollHeight、scrollWidth | NN 7 IE 4 DOM なし
| 読み取り専用
これらのプロパティは、要素のピクセル長を返します。ブラウザウィンドウの表示領域よりも大きい要素を含みます。元は、スクロールした要素および要素のスクロールに影響を与えた要素 (body、button、caption、div、fieldset、legend、marquee、および textarea) に対して IE 4 で実装されました。要素で表示される部分のみのサイズを返す、スクロール可能な要素に対する clientHeight プロパティおよび clientWidth プロパティと対照的です。ただし、Macintosh 版 IE では scroll- プロパティの解釈が異なり、表示される部分のサイズが返されます。
Windows 版 IE 5 からは、すべての HTML 要素がこれらのプロパティを持つようになり、スクロールしない要素の値は、offsetHeight プロパティおよび offsetWidth プロパティと同じになります。Netscape 7 では、すべての要素に対してこれらのプロパティが実装され、表示されるかどうかに関係なく、要素の高さと幅が返されます。いずれにせよ、body などの主要な要素ではこれらのプロパティの意味が曖昧なため、プラットフォーム間の操作の障害になる可能性がある点に注意してください。
例
    var midPoint = document.body.scrollHeight/2;
値
正の整数または 0
既定値
なし

scrollHeight、scrollWidth | NN 7 IE 4 DOM なし
| 読み取り専用
これらのプロパティは、要素のピクセル長を返します。ブラウザウィンドウの表示領域よりも大きい要素を含みます。元は、スクロールした要素および要素のスクロールに影響を与えた要素 (body、button、caption、div、fieldset、legend、marquee、および textarea) に対して IE 4 で実装されました。要素で表示される部分のみのサイズを返す、スクロール可能な要素に対する clientHeight プロパティおよび clientWidth プロパティと対照的です。ただし、Macintosh 版 IE では scroll- プロパティの解釈が異なり、表示される部分のサイズが返されます。
Windows 版 IE 5 からは、すべての HTML 要素がこれらのプロパティを持つようになり、スクロールしない要素の値は、offsetHeight プロパティおよび offsetWidth プロパティと同じになります。Netscape 7 では、すべての要素に対してこれらのプロパティが実装され、表示されるかどうかに関係なく、要素の高さと幅が返されます。いずれにせよ、body などの主要な要素ではこれらのプロパティの意味が曖昧なため、プラットフォーム間の操作の障害になる可能性がある点に注意してください。
例
    var midPoint = document.body.scrollHeight/2;
値
正の整数または 0
既定値
なし

scrollLeft、scrollTop | NN 7 IE 4 DOM なし
| 読み書き
要素内にある物理コンテンツの実際の左端と上端から、コンテンツの表示部分の左端または上端までの距離をピクセル単位で示します。これらのプロパティを設定すると、スクリプトを使用して、スクロール可能なコンテナに含まれているコンテンツ、つまり textarea 要素にあるテキストや、ブラウザウィンドウまたはフレーム内のドキュメント全体などのスクロールを調整できます。コンテンツがスクロールされない場合、両方のプロパティの値が 0 になります。scrollTop プロパティを 15 に設定すると、ウィンドウ内のドキュメントを上に 15 ピクセルだけスクロールします。scrollLeft プロパティは、明示的に変更しない限り影響を受けません。プロパティ値は、ユーザーがスクロールバーを使用するたびに変更されます。このことは、Windows 版 IE ではイベントオフセットのサイズの座標系はブラウザウィンドウ内のページの表示領域に関係するため、イベントによって実行される配置処理には重要な場合があります。document.body スクロール要素を追加して、イベント座標を body 要素内にあるコンテンツの位置に揃える必要があります。第 6 章の要素のドラッグに関する例を参照してください。Windows 版 IE 5 以降、scrollLeft プロパティと scrollTop プロパティはすべての HTML 要素オブジェクトで使用できますが、スクロールできない要素の値は 0 になります。
例
    document.body.scrollTop = 40;
値
正の整数または 0
既定値
0

scrollLeft、scrollTop | NN 7 IE 4 DOM なし
| 読み書き
要素内にある物理コンテンツの実際の左端と上端から、コンテンツの表示部分の左端または上端までの距離をピクセル単位で示します。これらのプロパティを設定すると、スクリプトを使用して、スクロール可能なコンテナに含まれているコンテンツ、つまり textarea 要素にあるテキストや、ブラウザウィンドウまたはフレーム内のドキュメント全体などのスクロールを調整できます。コンテンツがスクロールされない場合、両方のプロパティの値が 0 になります。scrollTop プロパティを 15 に設定すると、ウィンドウ内のドキュメントを上に 15 ピクセルだけスクロールします。scrollLeft プロパティは、明示的に変更しない限り影響を受けません。プロパティ値は、ユーザーがスクロールバーを使用するたびに変更されます。このことは、Windows 版 IE ではイベントオフセットのサイズの座標系はブラウザウィンドウ内のページの表示領域に関係するため、イベントによって実行される配置処理には重要な場合があります。document.body スクロール要素を追加して、イベント座標を body 要素内にあるコンテンツの位置に揃える必要があります。第 6 章の要素のドラッグに関する例を参照してください。Windows 版 IE 5 以降、scrollLeft プロパティと scrollTop プロパティはすべての HTML 要素オブジェクトで使用できますが、スクロールできない要素の値は 0 になります。
例
    document.body.scrollTop = 40;
値
正の整数または 0
既定値
0

tabIndex | NN 6 IE 4 DOM 1
| 読み書き
ドキュメント内にあるすべてのフォーカス可能な要素のタブ順序内で、この要素の順番を示す番号です。タブ順序は一定の規則に従って決定されます。ユーザーがページ内で Tab キーを押すと、最初に tabIndex プロパティが 0 より小さく設定されている要素にカーソルが移動します。フォーカスは、tabIndex の値が一番小さい要素から開始して、値の一番大きい要素まで順番に移動します。ページやドキュメント内での物理的な位置は関係ありません。tabIndex の値が同じ要素が 2 つある場合、ドキュメント内で先頭に近い方の要素が最初にフォーカスを得ます。その後、tabIndex プロパティをサポートしない要素や、値が 0 に設定されている要素がフォーカスの対象となります。これらの要素はドキュメント内の配置順にフォーカスを受けます。
W3C DOM および Netscape 6 では、tabIndex プロパティは a、area、button、input、object、select、textarea の各要素オブジェクトに制限されています。IE 4 では、これに applet、body、div、embed、isindex、marquee、span、table、および td が追加されます。IE 5 では、他のすべての表示可能な要素が追加されます。IE (のみ) で負の値を指定すると、要素がタブ順序から完全に削除されます。
Macintosh 版 IE 4 では、リンクとアンカーはタブ操作できないので、a 要素オブジェクトの tabIndex プロパティは無視されます。
例
    document.getElementById("link3").tabIndex = 6;
値
整数
既定値
0

blur() | NN 2 IE 3 DOM 1
現在のオブジェクトからフォーカスを削除し、オブジェクトの onblur イベントを呼び出します。IE の最新バージョンを除いたすべてのブラウザで、フォーカスとブラーに対応する要素 (イベントとメソッドの両方) の範囲が制限されています。第 8 章の共通 tabindex 属性を参照してください。下位互換性を保つには、テキスト input 要素や textarea 要素など、フォーカスを設定できる要素に blur() メソッドを適用します。要素を無効にする手段を持たないブラウザでは、たとえば、onfocus="this.blur();" 属性をテキスト input 要素に割り当ててフィールドを広範囲で無効にすることができます。これは、粗雑な方法ではありますが、下位互換性を保つには効果的です。
同じページでは blur() メソッドと focus() メソッドを控えめに使用してください。処理中に警告ダイアログボックスが表示されると、ブラーとフォーカスの無限ループを間違って実行してしまう可能性があります。また、1 つのオブジェクトで blur() メソッドを呼び出すと、window オブジェクトなど、別のオブジェクトが onfocus イベントを受け取ることがあります。
パラメータ
なし
戻り値
なし

focus() | NN 2 IE 3 DOM 1
現在のオブジェクトにフォーカスを設定し、オブジェクトの onfocus イベントを呼び出します。IE の最新バージョンを除いたすべてのブラウザで、フォーカスとブラーに対応する要素 (イベントとメソッドの両方) の範囲が制限されています。第 8 章の共通 tabindex 属性を参照してください。下位互換性を保つには、テキスト input 要素や textarea 要素など、フォーカスを設定できる要素に focus() メソッドを適用します。
テキストボックスにフォーカスを設定し、ボックス内の全テキストをあらかじめ選択するには、focus() メソッドに続いて select() メソッドを要素に使用します。警告ダイアログボックスを閉じるときなど、ウィンドウの切り替えが発生する場合は、これらのメソッドを個別の関数内に配置し、ダイアログの alert() メソッドに続く setTimeout() メソッドからその関数を呼び出します。Windows 版 IE では、この方法で一連のステートメントが正しく実行されます。
パラメータ
なし
戻り値
なし