首页 > 其他 > 详细

跨域信息传递postMessage

时间:2015-09-15 23:28:43      阅读:296      评论:0      收藏:0      [点我收藏+]
var sendToParent = function(event, data, listener) {
    var message = {
        event: event,
        data: data,
        listener: listener
    };
    window.parent.postMessage(JSON.stringify(message), "*");
};

 

var iframe = document.getElementById(‘iframe‘);
var sendToIframe = function(event, data, listener) {
    if (iframe && iframe.contentWindow) {
        var message = {
            event: event,
            data: data,
            listener: listener
        };
        iframe.contentWindow.postMessage(JSON.stringify(message), ‘*‘)
    }
};

 

var bindEvent =function (el, event, listener, useCapture) {
    ‘use strict‘;
    if (typeof useCapture === ‘undefined‘) {
        useCapture = false;
    }

    if (el.addEventListener) {
        el.addEventListener(event, listener, useCapture);
    }
    else if (el.attachEvent) {
        el.attachEvent(‘on‘ + event, listener);
    }
};

 

bindEvent(window, "message", function(e){
    var data = JSON.parse(e.data)||{};
    if(data.event && (typeof events[data.event] == "function") ){
        events[data.event](data.data||{});
        if(data.listener){
            //callback
        }
    }
});

 

跨域信息传递postMessage

原文:http://www.cnblogs.com/rubekid/p/4811757.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!