मैं एक समान समस्या में भाग गया और हल करने के लिए window.postMessage का उपयोग किया।
वर्तमान में, एपीआई केवल एक स्ट्रिंग को पारित करने का समर्थन करता है, लेकिन यदि आप अपना समाधान संशोधित करते हैं तो यह शक्तिशाली हो सकता है। अधिक जानकारी here
स्रोत पृष्ठ (एक iframe द्वारा उपयोग किया जा रहा) से:
postMessage एपीआई 2 पैरामीटर उम्मीद - संदेश, लक्ष्य
पूर्व: (window.parent.postMessage("HELLO_PARENT", 'http://parent.com');
माता पिता पृष्ठ से आइफ्रेम शामिल हैं। उदाहरण के लिए कंटेनर):
के रूप में आप सामान्य रूप से
होगा एक घटना श्रोता जोड़ें window.addEventListener('message', handleMessage, false);
समर्थन दोनों एक ही डोमेन और क्रॉस-डोमेन iframes घटना प्रणाली का उपयोग करने के लिए है एक सुसंगत जवाब \
function handleMessage(event) {
if (event.origin != "h ttp://child.com") { return; }
switch(event.data.message) {
case "HELLO_PARENT":
alert("Hello Child");
break;
}
}
स्रोत
2013-04-03 04:18:33
कृपया क्या 'एक ही source' है की अधिक स्पष्ट रूप से लिखें। –
आप अपने iframe से parent.functionname() को कॉल कर सकते हैं। – user10
समान प्रोटोकॉल, एक ही होस्ट, एक ही पोर्ट –