dagblog.
← Archiv

Magie otevírání oken


Problematiku bezpečného otevření nových oken jsem probral v
 příspěvku
 Odkazy — atribut onclick a přístupnost stránek
. Nyní se podíváme
 trochu detailnějí na samotnou metodu open objektu Window
 a probereme si jednotlivé argumenty a inicializační parametry nového okna.

Popis metody open

Tato metoda volana na objektu Window nebo jeho kontextu
 způsobí otevření nového okna nebo načtení nového dokumentu do okna již
 otevřeného.
 Signatura metody

window.open(String url,String název_okna,String inicializační_parametry,boolean historie)

Nyní se podrobněji podíváme na jednotlivé argumenty(názvy argumentu jsem lokalizoval do češtiny a je uveden jejich datový typ).

url
 Argumet, který určuje URL nově otevřeného okna. Pokud je vynechán nebo
 obsahuje prázdný řetězec, okno se otevře prázdné.
 název_okna
 Pod tímto symbolickým jménem je odkaz na nově otevřené okno. Přes tento
 název je okno zpřístupněno pro další manipulaci ze skriptu nebo jako hodnota
 atributu target elementů a a form
 jak bude vysvětleno později.
 inicializační_parametry
 
 Inicializační parametry okna umožňují otevření s předem
 specifikovanými vlastnostmi(prvky)
 např. výšce,šířce, s vertikálními posuvníky apod. Pokud je tento argument vynechán je okno otevřeno se všemi standardními prvky a naopak

pokud otevřeme okno s tímto parametrem a uvedeme alespoň jeden ini. prvek je okno otevřeno pouze s tímto prvkem. Prvek by měl podle
 specifikace nabývat hodnot yes a no avšak funkční se jeví i zápis s hodnotou 1 a 0,
 jednotlivé prvky se oddělují znakem čárka.

histroie
 
 Pokud je otevřeno okno s tímto argumentem nastaveným na hodnotu
 true není v historii okna lépe řečeno objektu
 History zaveden nový záznam.

S nově otevřeným oknem můžeme nakládat různě, pokud ho otevřeme
 bez dokumentu tj. nepoužijeme argument url nebo s prázdným řetězcem
 můžeme hodnotou argumentu název_okna plnit atribut
 target elementů a, což povede k provedení akce formuláře
 nebo odkazu do tohoto okna.

Seznam inicializačních parametrů

channelMode
 Určuje zda se má okno zobrazit v kanálovém režimu(IE 6.0)
 dependent
 Jestliže je roven hodnotě yes nebo 1 pak okno má být závislým potomkem aktuálního okna. To znamená,
 že například při minimalizaci rodičovského okna je minimalizováno i okno dceřiné.
 (Gecko-Mozilla 1.0,Opera 7.0)
 directories
 Adresářová tlačítka jako "Whats New" a "Whats cool" (IE 6.0)
 fullscreen
 Otevře okno v režimu celé obrazovky (IE 6.0)
 height
 Určuje v pixelech výšku zobrazené části dokumentu v tomto okně
 innerHeight
 Určuje v pixelech výšku zobrazené části dokumentu v tomto okně(Gecko-Mozilla 1.0)
 innerWidth
 Určuje v pixelech šířku zobrazené části dokumentu v tomto okně(Gecko-Mozilla 1.0)
 left
 Určuje v pixelech x-ovou souřadnici okna(Opera vztahuje k pozici záložky)
 location
 Zobrazí vstupní pole pro zadání URL tzv. address bar
 menubar
 Řádek nabídek jako např. Soubor,Úpravy,Zobrazit .... (Gecko-Mozilla 1.0,IE 6.0)
 outerHeight
 Určuje v pixelech celkovou výšku okna (Gecko-Mozilla 1.0)
 outerWidth
 Určuje v pixelech celkovou šířku okna(Gecko-Mozilla 1.0)
 resizable (Gecko-Mozilla 1.0,IE 6.0)
 
 Pokud tento prvek není zadán nebo je roven hodnotě no,
 nebude mít okno na svém okraji úchyty pro změnu velikosti.
 (Uživatel může mít možnost změnit velikost tohoto okna a to v závislosti na konkrétní platformě)
 
 screenX
 Určuje v pixelech x-ovou souřadnici okna(Gecko-Mozilla 1.0)
 screenY
 Určuje v pixelech y-ovou souřadnici okna(Gecko-Mozilla 1.0)
 scrollbars(IE 6.0)
 Horizontální(vertikální posuvník) okna
 status
 Zapíná zobrazení stavového řádku prohlížeče tzv. status bar (IE 6.0,Gecko-Mozilla 1.0)
 toolbar 
 Panel nástrojů prohlížeče(tlačítka zpět a vpřed) (IE 6.0,Gecko-Mozilla 1.0)
 top
 Určuje v pixelech y-ovou souřadnici okna(Opera vztahuje k pozici záložky)
 width
 Určuje v pixelech šířku zobrazené části dokumentu v tomto okně

Závorka udává funkčnost. Bylo testováno na prohlížečích Internet Explorer 6.0 SP1,Mozilla 1.0 a Opera 7.0.
 Pokud není výčet uveden je funkčnost ve všech výše uvedených prohlížečích, dale je pravděpodobné, že prohlížeče
 založené na jádru Gecko(Phoenix,Firebird,Netscape 6.0,Netscape 7.0), se budou chovat stejně jako Mozilla

Verze na Medium

Související články

Související epizody CZ Podcastu