読者です 読者をやめる 読者になる 読者になる

chrome extensionのcontent script内でつくったiframe.contentWindowがundefinedになる

chrome14。タイトルそのままだけどcontent scriptで

var iframe = document.createElement('iframe');
iframe.src = chrome.extension.getURL('iframe.html')
document.body.appendChild(iframe);
console.log(iframe.contentWindow); // => undefined

うーん、なんでじゃろ。postMessageできない。メッセージングしたいだけなんでchromeのメッセージングでもいいんだけどそっちもうまくいかんかった。ちなみに逆(iframe -> content script)はpostMessageできた。あとiframeのloadイベント待ってみたけど一緒だった。

とりあえずつくったときにデータ渡せればいいので

iframe.src = chrome.extension.getURL('iframe.html?foo=bar')

とかしてクエリストリングで取得できるようにしたけどイマイチすぎる。