PostMessage je nov komunikacijski API za komunikacijo med izvori, predstavljen v html5, ki omogoča dvosmerno komunikacijo z glavno stranjo in katerokoli stranjo razreda okvirja ali stranjo, ki jo odpre windows.open. Splošni postopek delovanja je naslednji:
metoda postMessage(data,origin) sprejema dva parametra:
(1) podatki: Podatki, ki jih je treba prenašati, specifikacija HTML5 omenja, da je parameter lahko katerakoli osnovna vrsta JavaScripta ali ponovljiv objekt, vendar to niso počeli vsi brskalniki; nekateri brskalniki lahko obdelujejo le parametre nizov, zato moramo uporabiti metodo JSON.stringify() za serializacijo parametrov objekta pri prenosu parametrov in se sklicovati na json2.js v nižji različici IE, da dosežemo podobne učinke.
(2) izvor: parameter nizov, označuje vir ciljnega okna, protokol + gostitelj + številka vrat [+URL], URL bo prezrt, zato ga ni mogoče zapisati, ta parameter je zaradi varnosti, metoda postMessage() bo sporočilo poslala le v določeno okno, seveda, če želite, lahko nastavite parameter tudi na "*", da ga lahko posredujete kateremukoli oknu, če želite določiti isti izvor kot trenutno okno, je nastavljen na "/";
Sami pošiljajte sporočila in prejemajte sporočila
Koda je naslednja:
Starševsko okno pošlje sporočilo v otroško okno, ki prejme sporočilo
Koda je naslednja:
Otroško okno pošlje sporočilo v nadrejeno okno, ki prejme sporočilo
Koda je naslednja:
Poleg tega je odjemalcu priključen preprost način poslušalec/odjemalec za meddomensko sporočanje na naslednjem naslovu:Prijava do hiperpovezave je vidna.
(Konec)
|