I bilden nedan visas sambandet mellan JavaScript-miljön och AIR-körningsmiljön. Även om bara ett enda inbyggt fönster visas, kan ett AIR-program innehålla flera fönster. (Och ett enda fönster kan innehålla flera HTMLLoader-objekt.)
Visa grafik i full storlek
JavaScript-miljön har sina egna Document- och Window-objekt. JavaScript-koden kan samverka med AIR-körningsmiljön genom egenskaperna runtime, nativeWindow och htmlLoader. ActionScript-koden kan samverka med JavaScript-miljön genom egenskapen window
för ett HTMLLoader-objekt, som är en referens till JavaScript-objektet Window. Både ActionScript- och JavaScript-objekt kan dessutom avlyssna händelser som skickas av både AIR- och JavaScript-objekt.
Egenskapen
runtime
ger tillgång till AIR API-klasser, så att du kan skapa nya AIR-objekt och få tillgång till klassmedlemmar (kallas även för statiska medlemmar). När du vill få tillgång till ett AIR-API lägger du till namnet på klassen, med paketet, i egenskapen
runtime
. Om du till exempel vill skapa ett File-objekt använder du programsatsen:
var file = new window.runtime.filesystem.File();
Obs!
AIR SDK innehåller en JavaScript-fil,
AIRAliases.js
, som definierar mer praktiska alias för de flesta vanliga AIR-klasser. När du importerar den här filen kan du använda den kortare formen air.Class i stället för window.runtime.package.Class. Du kan till exempel skapa File-objektet med
new air.File()
.
Objektet NativeWindow innehåller egenskaper som styr skrivbordsfönstret. Från en HTML-sida får du tillgång till det innehållande NativeWindow-objektet med egenskapen
window.nativeWindow
.
HTMLLoader-objektet innehåller egenskaper, metoder och händelser som styr hur innehållet läses in och återges. Från en HTML-sida får du tillgång till det överordnade HTMLLoader-objektet med egenskapen
window.htmlLoader
.
Viktigt!
Det är bara sidor som installeras som en del av programmet som har egenskaperna
htmlLoader
,
nativeWindow
eller
runtime
och bara när de läses in som ett dokument på den översta nivån. Dessa egenskaper läggs inte till när dokumentet läses in i en bildruta eller iframe. (Ett underordnat dokument kan få tillgång till dessa egenskaper i det överordnade dokumentet så länge det finns i samma säkerhetssandlåda. Ett dokument som till exempel läses in i en bildruta har åtkomst till egenskapen
runtime
för dess överordnade via
parent.runtime
.)