IFrame A में आईफ्रेम ए में इस तरह है:
& lt; iframe id = "
रिसीवर "& gt; & LT; स्क्रिप्ट & gt; Top.getElementById ("प्रेषक")। AddEventListener ('संदेश' प्राप्त संदेश, गलत); फ़ंक्शन प्राप्त मेसेज (ईवीटी) {कुछ करो} & lt; / script & gt; & Lt; iframe id = "प्रेषक" src = "प्रेषक एचटीएमएल" & gt; & Lt; / iframe & gt;
और मेरे पास SenderHtml में है:
& lt; स्क्रिप्ट & gt; सबसे पहले, मैं इसे सही ढंग से काम करने के लिए नहीं कर सकता लगता है.लेकिन अधिक महत्वपूर्ण बात, iframe "रिसीवर" कर सकते हैं अधिक डेटा के साथ एक पेज में हो, मैं यह कैसे सुनिश्चित कर सकता हूं कि कोई भी उसे भेजे गए डेटा को नहीं पकड़ पाएगा? मेरे पास इसके पृष्ठ के बाकी डेटा पर कोई नियंत्रण नहीं है। क्या मैं केवल भेजने के लिए SenderHtml में स्क्रिप्ट को बता सकता हूँ आईडी से "रिसीवर" फ्रेम क्या है? एक अन्य पहलू यह है कि 2 पृष्ठों के विभिन्न डोमेन हैं। > मुझे अंत में एक उत्तर मिला। मुद्दा यह है कि आईआरएफ़ के अंदर कोड है, यह एक गलती है। मैंने एक और पुनर्निर्देशन जोड़ा और इस मुद्दे को हल किया (सभी संबंधित HTML फ़ाइल के शरीर में हैं):
<पी> listener.html: & lt; script type = "text / javascript" & gt; window.addEventListener ('संदेश', receiveMessage, false); function receiveM Essage (evt) {चेतावनी ("संदेश मिला:" + evt.data); } & Lt; / script & gt; & Lt; iframe id = "प्रेषक" src = "Sender.html" & gt; & lt; / iframe & gt;
प्रेषक। HTML:
& lt; स्क्रिप्ट & gt; Parent.postMessage ("डेटा, '*'); & lt; / script & gt;
Comments
Post a Comment