が変更されabout:blank
たときに IE のページに iframeを作成するための回避策を知っている人はいますか?document.domain
document.domain
プロパティが変更された後、IE は空/動的 iframe へのアクセスを許可していないようです。
たとえば、iframe を動的に作成し、そこに html を挿入するとします。
// Somewhere else, some 3rd party code changes the domain
// from something.foo.com to foo.com
document.domain = 'jshell.net';
var iframe = document.createElement('iframe');
document.body.appendChild(iframe);
// In IE, we can't access the iframe's contentWindow! Access is denied.
iframe.contentWindow.document.body.style.backgroundColor = 'red';
jsfiddle の実際の例を次に示します: http://jsfiddle.net/XHkUT/
FF/Webkit では問題なく動作しますが、IE では動作しません。これは、プロパティが変更された後に作成された iframe に影響するため (上記の例のように)、特にイライラします。document.domain
IE のルールは「変更後に動的/空の iframe を作成すると、document.domain
その DOM にアクセスできなくなる」のようです。
iframesrc
をabout:blank
javascript:void(0)
またはjavascript:""
に設定できませんでした。