親ページに値を伝えるためのiframeの子ページの方法は何ですか?
iframeの子ページから値を親ページに渡すには、親ページのwindowオブジェクトのプロパティやメソッドを使用することができます。
- 子ページ内では、window.parentを使用して親ページのwindowオブジェクトにアクセスできます。
- window.parent.postMessage()メソッドを使用すると、値を親ページに渡すことができます。このメソッドを使うと、親ページにメッセージを送信し、データパラメータを渡すことができます。
サブページ内では、以下のコードを使用して値を親ページに渡すことができます:
// 子页面
var value = "这是要传递的值";
window.parent.postMessage(value, "*");
親ページでは、window.addEventListener()を使用して子ページからのメッセージを監視し、渡された値を取得できます。
// 父页面
window.addEventListener('message', function(event) {
// event.data就是传递的值
console.log("接收到子页面传递的值:" + event.data);
});
window.postMessage()メソッドの注意点は、第二引数が対象ウィンドウのソース(origin)であり、通常はワイルドカード”*”を使用して、任意のソースからメッセージを受信できることを示すことができます。特定のソースからのメッセージのみを受信したい場合は、このパラメータを適切なソースに設定することができます。
子ページと親ページが同じドメイン内にあることを確認してください。そうでないと、クロスドメインアクセスが制限されます。