JavaScript Window Object

Previous Table of Contents Next
JavaScript Math Object JavaScript Document Object

Purchase and download the full PDF version of this JavaScript eBook for only $8.99

a JavaScript ablakobjektum a JavaScript Objektumhierarchia tetején helyezkedik el, és a böngészőablakot (vagy a Windowst, ha egyszerre több böngészőablak is nyitva van) képviseli. E fejezetig a JavaScript belső és szintaxisára összpontosítottunk. Ebben a fejezetben elkezdjük a dolgokat a képernyőn (ami végül is a JavaScript egyik fő célja). A window objektum lehetővé teszi a fejlesztők számára, hogy olyan feladatokat hajtsanak végre, mint a böngészőablakok megnyitása és bezárása, figyelmeztető és gyors párbeszédablakok megjelenítése, valamint időtúllépések beállítása (egy meghatározott idő elteltével végrehajtandó művelet megadása). Bár az időtúllépések a window objektum jellemzői, ezeket a JavaScript Timeouts fejezetben fogjuk lefedni, nem pedig ebben a fejezetben.

tartalom

A JavaScript ablak objektumra való hivatkozás

a JavaScript objektum alapjainak megfelelően általában szükséges pontjelölés használata az objektum tulajdonságainak vagy metódusainak elérésekor. Például a következő parancsfájl-töredék hozzáfér a dokumentumobjektum write() metódusához:

document.write("Hello");

az ablakobjektum az objektumhierarchia legfelső szintű objektuma. Mint ilyen, amikor egy objektum metódusra vagy tulajdonságra hivatkoznak egy szkriptben az objektum neve és a pont előtag nélkül, a JavaScript feltételezi, hogy a window objektum tagja. Ez azt jelenti, például, hogy amikor hívja a window alert () metódus megjelenítéséhez riasztási párbeszédablak az ablak. az előtag nem kötelező. Ezért a következő módszer kéri elérni ugyanazt a dolgot:

window.alert();alert()
Ezoichirdetés jelentése

JavaScript ablak objektum tulajdonságai

a JavaScript ablak az objektum számos olyan tulajdonságot tartalmaz, amelyek ellenőrizhetők és használhatók egy szkriptben:

  • ablak.zárt-több ablak kezelésekor ez a tulajdonság azt jelzi, hogy egy ablak be van-e zárva vagy sem.
  • ablak.defaultstatus / ablak.status-defaultstatus megadja a böngésző állapotsorában megjelenő alapértelmezett üzenetet. állapot ideiglenes üzenetet ad meg, amelyet az alapértelmezett helyett a böngésző állapotsorában kell megjeleníteni. Sok böngészőben letiltva.
  • ablak.keretek – ha az ablak kereteket tartalmaz, ez a tömb tartalmazza a keretobjektumok tömbjét (lásd a JavaScript tömbök részleteit a tömbök eléréséről).
  • window.name -a parancsfájl által megnyitott ablakoknak nevet kell adni. Ez a tulajdonság tartalmazza a megfelelő ablakobjektum nevét.

  • ablak.nyitó-ha egy ablakot egy másik ablakban található szkriptben nyitottak meg, a gyermekablak ezen tulajdonsága tartalmaz egy referenciaablakot, amely megnyitotta.
  • ablak.szülő-ha ablakkeretekkel dolgozik, ez a tulajdonság hivatkozást tartalmaz a keretet tartalmazó ablakobjektumra.
  • ablak.képernyő-olyan objektum, amely információkat tartalmaz arról a képernyőről, amelyen az ablak megjelenik (az objektum tulajdonságai közé tartozik a magasság, szélesség, elérhető magasság, elérhető szélesség és színmélység).
  • ablak.self-hivatkozás az aktuális ablakra.
  • ablak.top-hivatkozás a legfelső szintű ablakra, amikor keretekkel dolgozik.

böngészőablakok megnyitása JavaScript használatával

egy új böngészőablak nyitható meg egy JavaScript szkriptből az ablakobjektum open() metódusával. Az új ablak megnyitásának szintaxisa a következő:

newWindowObj = window.open("URL", "WindowName", "feature, feature, feature ... ");

az alábbiakban ismertetjük az open() metódusnak átadott argumentumokat:

  • URL – megadja az új ablakba betöltendő weboldal URL-jét. Ha nincs megadva URL, üres ablak töltődik be.
  • WindowName – megadja az ablak nevét, és az ablakra utal.
  • jellemzők – vesszővel elválasztott funkciók listája, amelyek lehetővé teszik az ablak megjelenésének testreszabását. Lehetőségek:

Beállítás magyarázat
szélesség megadja a kezdeti szélességet
magasság megadja a böngésző kliens ablakának kezdeti magasságát (lásd innerheight a tartalomterület méretéhez)
innerwidth megadja az ablak tartalmi területének kezdeti szélességét
innerheight megadja az ablak tartalmának kezdeti magasságát terület
külső szélesség megadja a navigátorablak kezdeti szélességét
külső magasság megadja a navigátorablak kezdeti magasságát
eszköztár megadja, hogy az ablak tartalmazza-e a böngésző eszköztárát vagy sem
állapot megadja, hogy az ablaknak tartalmaznia kell-e a böngésző állapotsorát, vagy sem
függő megadja, hogy az ablaknak a szülőablakával összhangban kell-e bezáródnia
menüsor megadja, hogy a tartalmazza a böngésző menüsorát
location megadja, hogy az ablak tartalmazza-e a böngésző helye/URL mezőjét
görgetősávok elrejti/megjeleníti a böngésző vízszintes/függőleges görgetősávjait
átméretezhető megadja, hogy a felhasználó jogosult-e átméretezni az ablakot, miután megjelenik.
könyvtárak megadja, hogy az ablak tartalmazza-e a böngésző személyes eszköztárát.
copyHistory megadja, hogy az új ablak tartalmazza-e a meghívó ablak URL-előzményeinek másolatát
balra megadta a képpontok számát a képernyő bal oldalától az új ablakig
top megadta a képpontok számát a képernyő tetejétől az új ablakig az új ablak
alwayslowered létrehoz egy új ablakot, amely mindig a többi böngészőablak alatt helyezkedik el. Gyakran használják azokat a bosszantó pop-under hirdetéseket.
alwaysRaised létrehoz egy új ablakot, amely mindig a képernyő többi böngészőablakának tetején helyezkedik el.
z-lock zárolja azt a szintet, amelyen a böngésző megjelenik a többi böngészőablakhoz képest.

a magasság, szélesség és pozíció jellemzők számokkal vannak beállítva. A többi funkcióbeállítás igaz vagy hamis értékekkel állítható be (az igen, a nem és az 1 és a 0 is használható az igaz és a hamis helyett). A hiányzó attribútum hamisnak tekinthető. A következő példa egy új ablakot hoz létre egy menüsorral, meghatározott dimenzióval és eszköztár nélkül:

newWindowObj = window.open("URL", "WindowName", "toolbar=0, menubar=1, innerHeight=200, innerWidth=300");

böngészőablakok bezárása JavaScript használatával

egy ablak bezárható az ablakobjektum close() metódusával. Az ablak nevére (az open() metódusban megadott) hivatkozni kell a Bezárás végrehajtásakor, hogy biztosan bezárja a megfelelő ablakot. Például a következő kód létrehoz egy új ablakot, majd létrehoz egy nyomógombot, amelyre kattintva bezárja az új ablakot:

<script language="JavaScript" type="text/javascript">newWindowObj = window.open ("", "MyWindow");</script><form action="null"> <input type="button" value="Close Window" onclick="newWindowObj.close()" /></form>

az aktuális ablakot megnyitó ablak bezárása Az aktuális ablakobjektum nyitó tulajdonságával is lehetséges:

window.opener.close()

Ez bezárja azt az ablakot, amely megnyitotta azt az ablakot, amelyben a fenti parancsfájl fut.

A Windows áthelyezése és átméretezése

az ablak áthelyezhető a képernyő meghatározott koordinátáira az ablakobjektum moveTo () metódusával, amely argumentumként X és y koordinátákat vesz fel. A következő példa egy új ablakot áthelyez a 100, 200 helyre a képernyőn, amikor megnyomja az “ablak áthelyezése” gombot:

<script language="JavaScript" type="text/javascript">newWindowObj = window.open ("", "MyWindow");</script><form action="null"> <input type="button" value="Move Window" onclick="newWindowObj.moveTo(100, 200)" /></form>

amellett, hogy a mozgó ablak egy adott új helyre is lehetséges, hogy mozog egy ablak képest az aktuális helyét a képernyőn a moveBy() módszer a JavaScript window objektumot. A módszer ismét X és y értékeket vesz fel, amelyek hozzáadódnak a megadott ablak aktuális x és y koordinátáihoz. A negatív értékek felhasználhatók a mozgás irányának megváltoztatására:

<script language="JavaScript" type="text/javascript">newWindowObj = window.open ("", "MyWindow");</script><form action="null"> <input type="button" value="Move Window" onclick="newWindowObj.moveTo(100, 200)" /></form>

a window resizeTo() és a resizeBy() metódusok hasonlóan működnek, mivel lehetővé teszik az ablak méretének megváltoztatását egy adott méretre, vagy egy új méretre az aktuális mérethez képest.

az ablak fókuszának megváltoztatása

Ha egy ablak a képernyőn jelenleg kiválasztott ablak, akkor azt mondják, hogy fókuszban van. Általában az egérmutatóval való kattintás egy ablakban az ablak fókuszát adja. A JavaScript segítségével programozható az ablak fókuszának megváltoztatása a focus() és blur () módszerekkel. A következő példa egy új ablakot jelenít meg, elhomályosítja azt, hogy a nyitó ablak továbbra is fókuszban legyen, és egy gombot biztosít a fókusz új ablakra váltásához:

<script language="JavaScript" type="text/javascript">newWindowObj = window.open ("", "MyWindow");newWindowObj.blur();</script><form action="null"> <input type="button" value="Focus New Window" onclick="newWindowObj.focus()" /></form>

Üzenetdoboz párbeszédablakok megjelenítése

a JavaScript ablakobjektum háromféle üzenet párbeszédablakot jelenít meg, a riasztást, a megerősítést és a gyors párbeszédablakokat:

  • alert – üzenet megjelenítésére szolgál a felhasználó számára. Tartalmaz egy üzenetterületet, ahol a figyelmeztető üzenetet meg kell jeleníteni, valamint egy “OK” gombot, amelyre a felhasználó rákattinthat a párbeszédablak elutasításához. Az alert() metódus egyetlen argumentumot vesz fel, amely a párbeszédpanelen megjelenítendő üzenetet képviseli. A következő weblaprészlet egy figyelmeztető párbeszédpanelt jelenít meg a “nincs érvényes jelszavad” üzenettel, amikor a “Figyelmeztetés megjelenítése” gombra kattint:
<form action="null"> <input type="button" value="Show Alert" onclick="window.alert('You do not have a valid password')" /></form>
  • megerősítés – akkor használható, ha igen vagy nem választ kell kapnia a felhasználótól. Ez a párbeszédpanel egy üzenettel, valamint az “OK” és a “Mégse” gombokkal jelenik meg. A confirm() metódus az üzenetet argumentumként jeleníti meg a felhasználónak, és true vagy false értéket ad vissza attól függően, hogy a felhasználó megnyomta – e az “OK” vagy a “Cancel”gombot:
<script language="JavaScript" type="text/javascript">function showConfirmation(){ var result = confirm("Would you like to continue?"); if (result) document.write("Continue"); else document.write("Do not continue");}</script><form action="null"> <input type="button" value="Show Confirmation" onclick="showConfirmation()" /></form>
  • prompt-úgy tervezték, hogy lehetővé tegye a felhasználótól származó információk megszerzését. A párbeszédablak egy üzenetet tartalmaz a felhasználónak, egy szövegbeviteli mezőt az adatok beviteléhez, valamint az OK és a Mégse gombokat. A prompt() metódus az üzenetet argumentumként jeleníti meg, és a felhasználó által megadott értéket adja vissza:
<script language="JavaScript" type="text/javascript">function showPrompt(){ var userInput = prompt("Please enter your name:"); document.write("Hello, " + userInput);}</script><form action="null"> <input type="button" value="Show Prompt" onclick="showPrompt()" /></form>

vásárolja meg és töltse le a JavaScript eBook teljes PDF verzióját mindössze 8 dollárért.99

Previous Table of Contents Next
JavaScript Math Object JavaScript Document Object

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.