Hatena::ブログ(Diary)

三等兵

2010-06-16

styleタグのCSSや外部CSSの値を取得

当たり前ですが、

element.style.xxx

で取得できるのは要素にstyle属性として指定されている値だけなので。たとえば、

// css
#box { width: 100px; }

//html
<div id="box"></div>

//js
var element = document.getElementById('box');
var style = element.style.width; // empty

これじゃもちろん取得できない。ではこういう場合でもwidthプロパティを取得したいってときはどうするかというと、

var element = document.getElementById('box');
var style = (element.currentStyle || document.defaultView.getComputedStyle(element, '')).width; // '100px'

こうする。横着してるので、使うのはここですね。

var style = element.currentStyle || document.defaultView.getComputedStyle(element, '')

http://d.hatena.ne.jp/amachang/20070611/1181554170


よく使われてそう。便利。


わざわざ使う値はstyle属性で指定してたという赤面話は内緒です。

トラックバック - http://d.hatena.ne.jp/sandai/20100616/p1