MessageChannel बनाते समय, यह डेटा भेजने के लिए आंतरिक रूप से दो पोर्ट बनाता है और इसे किसी अन्य ब्राउज़िंग संदर्भ में अग्रेषित करता है।
- postMessage() - मैसेज थ्रो चैनल पोस्ट करें
- start() - यह डेटा भेजता है
- close() - यह बंदरगाहों को बंद कर देता है
इस परिदृश्य में, हम डेटा को एक iframe से दूसरे iframe में भेज रहे हैं। यहां हम डेटा को फ़ंक्शन में लागू कर रहे हैं और डेटा को DOM को पास कर रहे हैं।
उदाहरण
var loadHandler = function(){
var mc, portMessageHandler;
mc = new MessageChannel();
window.parent.postMessage('documentAHasLoaded','http://foo.example',[mc.port2]);
portMessageHandler = function(portMsgEvent){
alert( portMsgEvent.data );
}
mc.port1.addEventListener('message', portMessageHandler, false);
mc.port1.start();
}
window.addEventListener('DOMContentLoaded', loadHandler, false);