2007-07-03
Safari で CSSStyleSheet オブジェクトを生成する方法
今まで Safari では出来ないと思っていました
var element = document.createElement('style'); document.getElementsByTagName('head')[0].appendChild(element); var sheet = element.sheet; alert(sheet); // null
こんな感じで null になってしまうのです。。。
しかし!
さっき出来る方法が分かりました!
var element = document.createElement('style'); element.appendChild(document.createTextNode('')); // この行を追加 document.getElementsByTagName('head')[0].appendChild(element); var sheet = element.sheet; alert(sheet); // [object CSSStyleSheet]
このように TextNode を追加することで sheet オブジェクトが取得できるようになりました。
あー。どうして今まで試さなかったんだろう!
でも、分かってスッキリ!
トラックバック - http://d.hatena.ne.jp/amachang/20070703/1183445387
リンク元
- 200 http://reader.livedoor.com/reader/
- 125 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GFRC_jaJP214JP215&q=Javascript+連想
- 84 http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=javascript+配列&num=50
- 74 http://www.google.com/reader/view/
- 66 http://www.google.co.jp/search?hl=ja&client=firefox&rls=org.mozilla:ja:official&hs=72a&q=initialize+javascript&btnG=検索&lr=lang_ja
- 56 http://b.hatena.ne.jp/
- 53 http://game.g.hatena.ne.jp/Nao_u/
- 50 http://www.google.co.jp/ig?hl=ja
- 47 http://b.hatena.ne.jp/entrylist?sort=hot
- 46 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&hs=d2G&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=javascript+benchmark&spell=1
