<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
<cite>hail2u.net - Weblog - getComputedStyle()を利用した既読チェック</cite> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://hail2u.net/blog/coding/check-visited-or-not-by-getcomputedstyle.html">http://hail2u.net/blog/coding/check-visited-or-not-by-getcomputedstyle.html</anchor-external>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2006-08-25 16:12:58 +00:00</weak>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end>
<code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">getComputedStyle</anchor></code> で得た <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSSStyleDeclaration</anchor></code>
の <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cssText</anchor></code> は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 でも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> 9 でもなぜか<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空文字列</anchor>を返します。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://suika.fam.cx/gate/2007/cssom/viewer?c=p%20%7B%0D%0A%20%20color%3A%20blue%3B%0D%0A%7D;h=%3Cinput%20type%3Dbutton%20value%3Dx%20onclick%3D%22%0D%0A%20%20var%20sd%20%3D%20getComputedStyle%20(document.getElementsByTagName%20('p')%5B0%5D%2C%20null)%0D%0A%20%20var%20v%20%3D%20sd.cssText%3B%0D%0A%20%20w%20(typeof%20(v))%3B%0D%0A%20%20w%20(v.length)%3B%0D%0A%20%20w%20(sd.color)%3B%0D%0A%22%3E%0D%0A%0D%0A%3Cp%3EXXXXX%3C%2Fp%3E;p=n;x=style-element">http://suika.fam.cx/gate/2007/cssom/viewer?c=p%20%7B%0D%0A%20%20color%3A%20blue%3B%0D%0A%7D;h=%3Cinput%20type%3Dbutton%20value%3Dx%20onclick%3D%22%0D%0A%20%20var%20sd%20%3D%20getComputedStyle%20(document.getElementsByTagName%20('p')%5B0%5D%2C%20null)%0D%0A%20%20var%20v%20%3D%20sd.cssText%3B%0D%0A%20%20w%20(typeof%20(v))%3B%0D%0A%20%20w%20(v.length)%3B%0D%0A%20%20w%20(sd.color)%3B%0D%0A%22%3E%0D%0A%0D%0A%3Cp%3EXXXXX%3C%2Fp%3E;p=n;x=style-element</anchor-external></comment-p><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end>
<code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">getComputedStyle</anchor></code> で得た <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSSStyleDeclaration</anchor></code>
の <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cssText</anchor></code> は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> 2 でも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor> 9 でもなぜか<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空文字列</anchor>を返します。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://suika.fam.cx/gate/2007/cssom/viewer?c=p%20%7B%0D%0A%20%20color%3A%20blue%3B%0D%0A%7D;h=%3Cinput%20type%3Dbutton%20value%3Dx%20onclick%3D%22%0D%0A%20%20var%20sd%20%3D%20getComputedStyle%20(document.getElementsByTagName%20('p')%5B0%5D%2C%20null)%0D%0A%20%20var%20v%20%3D%20sd.cssText%3B%0D%0A%20%20w%20(typeof%20(v))%3B%0D%0A%20%20w%20(v.length)%3B%0D%0A%20%20w%20(sd.color)%3B%0D%0A%22%3E%0D%0A%0D%0A%3Cp%3EXXXXX%3C%2Fp%3E;p=n;x=style-element">http://suika.fam.cx/gate/2007/cssom/viewer?c=p%20%7B%0D%0A%20%20color%3A%20blue%3B%0D%0A%7D;h=%3Cinput%20type%3Dbutton%20value%3Dx%20onclick%3D%22%0D%0A%20%20var%20sd%20%3D%20getComputedStyle%20(document.getElementsByTagName%20('p')%5B0%5D%2C%20null)%0D%0A%20%20var%20v%20%3D%20sd.cssText%3B%0D%0A%20%20w%20(typeof%20(v))%3B%0D%0A%20%20w%20(v.length)%3B%0D%0A%20%20w%20(sd.color)%3B%0D%0A%22%3E%0D%0A%0D%0A%3Cp%3EXXXXX%3C%2Fp%3E;p=n;x=style-element</anchor-external></comment-p><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end>
<cite>getComputedStyle について調べてたら深みにハマったのでメモ - IT戦記</cite> (<code>2008-01-13 07:13:36 +09:00</code> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://d.hatena.ne.jp/amachang/20070611/1181554170">http://d.hatena.ne.jp/amachang/20070611/1181554170</anchor-external>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end>
<cite>Bug 316981 &amp;#8211; background-position property is not available through the CSS DOM interface</cite> (<time>2008-01-27 21:50:50 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugzilla.mozilla.org/show_bug.cgi?id=316981">https://bugzilla.mozilla.org/show_bug.cgi?id=316981</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <cite>ブラウザ毎の getComputedStyle の戻り値 - uupaaの開発日記</cite> (<time>2008-12-27 15:26:27 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://d.hatena.ne.jp/uupaa/20080928/1222543331">http://d.hatena.ne.jp/uupaa/20080928/1222543331</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <cite>はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記</cite> (<time>2009-02-08 18:51:12 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://d.hatena.ne.jp/amachang/20081126/1227700830">http://d.hatena.ne.jp/amachang/20081126/1227700830</anchor-external></p><blockquote><ul><li>getComputedStyle で取得したオブジェクトのプロパティにアクセスすると、それまでの DOM の変更が一気に計算される</li><li>DOM に変更がない場合(スタイルを再計算する必要がない場合)は、プロパティのアクセスは軽い</li></ul><p>ということです。</p><p>つまり、 ComputedStyle のプロパティアクセスと DOM の変更が交互に来るような場合が最悪で、一気に DOM を変更したあと、一気に getComputedStyle をするというのが理想です。</p><p>これは、 Firefox ではどの程度影響があるかは分かりません(実験したことがないので、今度実験してみます)が、 Google Chrome や Safari など WebKit 系のブラウザではかなり顕著です。</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <cite>IRC logs: freenode / #whatwg / 20091204</cite>
(<time>2009-12-27 16:46:13 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://krijnhoetmer.nl/irc-logs/whatwg/20091204#l-629">http://krijnhoetmer.nl/irc-logs/whatwg/20091204#l-629</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite>IRC logs: freenode / #whatwg / 20130723</cite>
( (<time>2013-07-24 20:12:52 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://krijnhoetmer.nl/irc-logs/whatwg/20130723">http://krijnhoetmer.nl/irc-logs/whatwg/20130723</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en">Re: computedStyle of cloneNode</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">L. David Baron</anchor>著, <time>2016-05-03 13:20:09 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/www-style/2016May/0014.html">https://lists.w3.org/Archives/Public/www-style/2016May/0014.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite xml:lang="en">Re: computedStyle of cloneNode</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">L. David Baron</anchor>著, <time>2016-05-04 06:08:22 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/www-style/2016May/0018.html">https://lists.w3.org/Archives/Public/www-style/2016May/0018.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="en"><strong>[</strong>cssom<strong>]</strong> Fix getComputedStyle with over-constrained box-offset properties</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">zcorpan</anchor>著, <time>2016-06-21 20:00:42 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/w3c/csswg-drafts/commit/c996510d75544786a5361127e69c71a5fc725785">https://github.com/w3c/csswg-drafts/commit/c996510d75544786a5361127e69c71a5fc725785</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite xml:lang="en">Re: computedStyle of cloneNode</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Simon Pieters</anchor>著, <time>2016-06-30 20:36:00 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/www-style/2016Jun/0183.html">https://lists.w3.org/Archives/Public/www-style/2016Jun/0183.html</anchor-external></p></body></html>