こちら側のコード
<script type="text/javascript">
if ( window.attachEvent ) {
window.attachEvent('onmessage',function(e) {
document.getElementById("msg").value = e.data;
document.getElementById("origin").value = e.origin;
});
}
else {
window.addEventListener('message',function(e) {
document.getElementById("msg").value = e.data;
document.getElementById("origin").value = e.origin;
}, false);
}
</script>
<input type="text" id="msg">
<input type="text" id="origin" style='width:400px;'>
<br><br>
<iframe
src="http://lightbox.on.coocan.jp/message.htm"
name="myframe"
frameborder="1"
scrolling="yes"
width="500"
height="100"
></iframe>
別ドメインの IFRAME 内のコード parent で直接 HTML 内のオブジェクトにはアクセスできませんが、 parent の postMessage で、そのウインドウにメッセージを post 可能です。これは、逆でも同じで、こちらがわから IFRAME に対して post するには、IFRAME のオブジェクトの contentWindow.postMessage を実行します。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=EUC-JP">
</head>
<body>
<input
type="text"
id="message"
style='width:200px;'
value="日本語表示"
>
<input
type="button"
value="post"
onclick='parent.postMessage(document.getElementById("message").value, "*")'
>
</body>
</html>
|
|
【クロスドメインの最新記事】