PostMessage е нов API за комуникация между произходите, въведен в html5, който ви позволява двупосочна комуникация с главната страница и с всяка страница от клас frame или страница, отворена чрез window.open. Общият ѝ оперативен процес е следният:
postMessage(data,origin) метод приема два параметъра:
(1) данни: Данните, които трябва да се предават, спецификацията на HTML5 споменава, че параметърът може да бъде всеки базов тип JavaScript или възпроизводим обект, но не всички браузъри са го направили, някои браузъри могат да обработват само параметри на низове, затова трябва да използваме метода JSON.stringify() за сериализиране на параметрите на обекта при предаване на параметрите и да се обръщаме към json2.js в по-долната версия на IE, за да постигнем подобни ефекти.
(2) origin: Параметър на низ, посочи източника на целевия прозорец, протокол + хост + номер на порт [+URL], URL адресът ще бъде игнориран, така че не може да бъде записан, този параметър е заради съображения за сигурност, методът postMessage() ще предаде съобщението само до посочения прозорец, разбира се, ако желаете, можете да зададете параметъра на "*", така че да може да се предаде във всеки прозорец, ако искате да посочите същия произход като текущия прозорец, той се задава на "/";
Пишете и получавайте съобщения сами
Кодът е следният:
Родителският прозорец изпраща съобщение към дъщерния прозорец, а дъщерният прозорец получава съобщението
Кодът е следният:
Дъщерният прозорец изпраща съобщение към родителския прозорец, а родителският прозорец получава съобщението
Кодът е следният:
Освен това, към клиента е прикрепен прост режим слушател/клиент за междудомейн съобщения на следния адрес:Входът към хиперлинк е видим.
(Край)
|