postMessage を使用して正しい高さにサイズ変更されたクロスドメイン iframe を持つ Web サイトで作業しています。私が抱えている唯一の問題は、どの iframe がどの高さかを特定することです。私が現在設定している方法は、1 つの iframe がその高さを親に送信すると、すべての iframe の高さが変更されるというものです。
親:
var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
var eventer = window[eventMethod];
var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message";
eventer(messageEvent, function(e) {
$('iframe').height(e.data);
}, false);
iframe:
var updateHeight = function() {
if(window.parent) {
window.parent.postMessage($('.widget').outerHeight(), '*');
}
};
message
イベントを送信した iframe を特定する方法はありますか?