postMessage が利用できないと正しく動作しない Web ページがあります。シンプルなものを使いたい:
if (window.postMessage === undefined) {
//alert the user
}
このアプローチに予測できない問題はありますか?
postMessage が利用できないと正しく動作しない Web ページがあります。シンプルなものを使いたい:
if (window.postMessage === undefined) {
//alert the user
}
このアプローチに予測できない問題はありますか?
私はJSの専門家でもファンでもありませんが、同様の問題に関する私の経験は次のとおりです。
同様の問題がありました。オブジェクトで「postMessage」を使用して、Chrome ブラウザにロードされたネイティブ ライブラリと通信します。ある時点で、「postMessage」は、通信のために正常に機能していた後、未定義になりました。
「postMessage」を呼び出していた html オブジェクトを含む div の可視性を切り替えた後に発生したことが判明しました。
次のようなものがありました:
私たちの場合、「embed」オブジェクトで「postMessage」を呼び出していました (これが、ネイティブ層との通信が行われている方法です)。
したがって、同様のシナリオである場合は、「window」オブジェクトのいくつかのプロパティを変更したために、「postMessage」関数が未定義になった可能性があります。それは単なるヒントです。
function handlingMsg(e){
var heightIn = (typeof e.data === "object") ? e.data['height'] : e.data;
$("#zbFrame").attr("height",Number(heightIn));
}
//iframe 적용
// <= ie8
if (!window.addEventListener) {
window.attachEvent("onmessage", handlingMsg);
}else{ // > ie8
window.addEventListener('message', handlingMsg, false);
}