msdn online Web Workshop / currentStyle Objectの翻訳

currentStyle Object

カスケードされた形式とグローバル・スタイルシート、インライン・スタイル、HTML属性によって指定されるオブジェクトのスタイルを表現する。

Remark

currentStyle オブジェクトは要素のカスケードされたスタイルを返すが、style オブジェクトは STYLE 属性を通して要素上のインラインに当てられたスタイルだけを返す。このため、currentStyle オブジェクトを通して取り出されたスタイル値は、 style オブジェクトを通して取り出されるスタイル値と異なるかも知れない。例えば、パラグラフ上でcolorプロパティが、インラインではなく、リンク又は埋め込みのスタイルシートだけで、設定されている場合、 object.style.colorが値を返さないのに対して、object.currentStyle.colorは値を返す。しかし、もし著述者が<P STYLE="color:'red'">を指定する場合は、 currentStyleSTYLE の両オブジェクトとも値 red を返す。

currentStyle オブジェクトは、ページに当てられたスタイル設定を反映する値を返すが、値が取り出された時に何が表現されているかは反映しない。例えば"color:red; display:none" を持つオブジェクトは、オブジェクトがページに表示されなくても、redとしてcurrentStyle.colorを返す。 currentStyle オブジェクトは、その時、レンダリングの強制により影響を受けない。Exampleセクションの三番目の例はこの振る舞いを説明している。無効化されたスタイルシートもまた currentStyle の値に影響しない。

返値の単位は、がオブジェクトを設定するのに使われるものと同じ単位である。例えば、もしオブジェクトの color が、STYLE="color:'green'"を使ったインラインとして設定されるなら、object.currentStyle.color は、#00FF00ではなくgreenを返す。しかし、著述者によって設定されたオブジェクト値に現れる大文字の使用(capitalization:小文字を大文字化する)と余分な空白は、 currentStyle オブジェクトがオブジェクト値を返すときには失われる。

currentStyle オブジェクトは、スタイル規則でユーザー定義のプロパティをサポートする。Exampleセクションの二番目の例を見よ。

currentStyle オブジェクトは非同期である。これは、スタイルが設定されることが出来ずその上直接問い合わせできないことを意味する(その代わり、古い値が返される)。このため、addImport のようなメソッドで currentStyle の期待される振る舞いを得るスクリプトに対しては、スクリプトは currentStyle をチェックするメソッドや関数を呼び出す関数を含む必要がある。ページがロードされている間に現在のスタイルをチェックするスクリプトのためには、スクリプトは body 要素がロードされページが表示されるまで待たなければならず、さもないと currentStyle の値が表示されているものを反映しないかも知れない。

このオブジェクトはインターネット・エクスプローラ 5のスクリプトで利用できる。