postMessage

时间:2023-03-09 17:06:26
postMessage

postMessage
父页面
e.target.contentWindow.postMessage(messageData, '*');

/*******onMessage处理******/
function onMessageHandler(e){
var dataStr = e.data;
try{
var dataJson = Ext.util.JSON.decode(dataStr);
if(dataJson.options){
var options = Ext.decode(decodeURIComponent(dataJson.options));
var hanlder = options.handler;//处理函数
var scope = options.scope;
if(hanlder){
eval('0,' + hanlder + '.call(' + scope + ',"'+ encodeURIComponent(Ext.encode(dataJson.data)) + '","'+ encodeURIComponent(Ext.encode(options.data)) +'")');
}
}
}catch(ex){
console.log(ex);
}

}
//监听postMessage消息事件
if (typeof window.addEventListener != 'undefined') {
window.addEventListener('message', onMessageHandler, false);
} else if (typeof window.attachEvent != 'undefined') {
window.attachEvent('onmessage', onMessageHandler);
}