Modern ismeretek WEB oldalon : Javascript ismertető HTML formátumban
Layer objektum |
||
A layer objektum bemutatása | ||
Elemváltozók (tulajdonságok) : | ||
above | Előtérben lévő layer | |
background | Réteg háttérkép | |
bgColor | Réteg háttérszín | |
below | Háttérben lévő réteg | |
clip | A réteg kijelző területe | |
document | Aréteg document objektuma | |
left | A bal felső sarok relatív távolsága (bal érték) | |
length | A rétegek száma | |
name | A réteg neve | |
pageX | A bal felső sarok abszolút távolsága (vizszintesen) | |
pageY | A bal felső sarok abszolút távolsága (függőlegesen) | |
parentLayer | A szülő layer objektumum | |
siblingAbove | Az előtérben lévő réteg objektum | |
siblingBelow | A háttérben lévő réteg objektum | |
src | A réteg tartalom beemelés külső fájlból | |
top | A bal felső sarok relaív távolsága (felső érték) | |
visibility | A réteg láthatósága | |
zIndex | A layer z indexe (egymáson levő rétegek poziciója) | |
Elemfüggvények (metódusok) : | ||
captureEvents() | Esemény figyelés | |
handleEvent() | Esemény kezelés | |
load() | Külső fájl betöltése | |
moveAbove() | Előtérebe hozni | |
moveBelow() | Háttérbe küldeni | |
moveBy() | A layer mozgatása megadott számú pixel-lel | |
moveTo() | A layer mozgatása relatív pozicióba | |
moveToAbsolute() | A layer mozgatása abszolút pozicióba | |
releaseEvents() | Esemény figyelés vége | |
resizeBy() | Magasság és szélesség módosítása egy bizonyos értékkel (pixelben megadva) | |
resizeTo() | Magasság és szélesség beállítása egy bizonyos értékre (pixelben megadva) | |
routeEvent() | Esemény továbbadása a hierarhiának megefelelően |
A layer objektum bemutatásaA layer objektum által, mely a JavaScript objektum hierarhiában a document objektum alatt található, lehetőségünk van a layer-ok elérésére, de csak Netscape böngészők által. Egy layer objektum, melyet magyarul a réteg szóval illetünk, a HTML fájl betöltésekor keletkezik. A layer tulajdonképpen egy dokumentum, mely objektumokat tartalmaz. A rétegek elhelyezkedését, a rajta levő szövegek és grafikák pozicionálását illetve a láthatóságát külön megadhatjuk. A rétegeket többféle módon is megszólíthatjuk : Példa 1:
Példa 2:
Magyarázat:A layerokat kétféle módon szólíthatjuk meg :
aboveMegadja a layer felett (az előtérben) levő réteget. Példa:
Magyarázat:A példában egy sárga és egy lila layert, továbbá két hivatkozást definiáltunk. Ha rákattintunk az elsőre, akkor egy üzenőablakban kijelzi annak a rétegnek a nevét, mely a sárga felett van. A második a felső szélétől való távolságot adja meg. backgroundMegadja a layer háttérképét, melyet az alábbi példában dinamikusan változtatunk. Példa:
Magyarázat:A példában megadtuk egy layer háttérképét.Ha ráklikkelünk a hivatkozásra, akkor az a háttérképet lecseréli egy másikra. Vegyük észre, hogy a HTML fájl fejrészében lévő Scriptterületen deklaráltunk egy images objektumot. Maga a csere azáltal jön létre, hogy a background.src-nak értéket adunk. bgColorMegadja a réteg háttérszinét, melyet az alábbi példában dinamikusan változtatunk. Példa:
belowMeghatározza a háttérben levő réteget. Példa:
clipMegadja, hogy a réteg mely részleteit láthassuk.Ennek az elemváltozónak további kiegészítő tulajdonságai is vannak :
Példa:
Magyarázat:A példában egy réteget definiáltunk, melynek a teljes felülete látható. Mivel clip-et nem adtunk meg, ezért a clip elemváltozó al-tulajdonságai a következők : clip.top és clip.left 0, továbbá a clip.width, clip.height, clip.bottom és clip.right mind 200. Ha rákattintunk a Kicsinyit hívásra, akkor az a látható layer terület jobb alsó sarkának értékeiből elvesz 10 pixelt, a Nagyit meg hozzáad 10-et. documentMinden layer objektumot a Netscape böngészője úgy kezel mint egy kis dokumentumot. Ezért van a layer-nak egy saját document objektuma, mely éppúgy működik mint az általános document objektum, melyen keresztül a grafikákat, űrlapokat, szöveges objektumokat stb.. elérhetjük. Ha szeretnénk ezeket az objektumokat layer-on keresztül elérni, akkor a layer objektum saját document-objektumát kell mgszólítani : Példa:
Magyarázat:A példában egy layert, továbbá egy hivatkozást definiáltunk. Ha rákattintunk a hivási pontra, akkor az meghívja a modosit()függvényt, melyet a HTML fájl fejrészében lévő JavaScript területen deklaráltunk. Ez a függvény tipikus document objektum metódusokat hív meg mint az open(), write() és close(). A különleges azonban az, hogy itt nem a globális dokumentumról van szó, hanem arról, melyet a layer biztosít a számunkra : document.sajat.document leftMegadja a bal felső sarok relativ távolságát pixelben(bal érték), melyet az előtérben lévő layerhoz ill. dokumentumhoz viszonyít. Az abszolút megadáshoz lásd : pageX. Példa:
Magyarázat:A példában egy réteget mutatunk hatso neven, mely az előtérben lévő layer 200. pixelénél kezdődően egy hivatkozást mutat. Ha erre rákattintunk akkor az kiírja a bal értéket 200-ra, holott a képernyőn 300-nak látszik. Ez azért van, mert a felette levő réteg bal értéke 100 pixel. lengthMagadja a HTML fájlban levő rétegek számát. Példa:
nameMegadja a réteg nevét. Példa:
pageXMegadja a bal felső sarok abszolút távolságát vízszintesen mérve, pixelben. A viszonyítási pont mindig a globális dokument, még akkor is, ha az egy másik dokumentumban van megjelenítve. Példa:
Magyarázat:Ha a példában lévő hívatkozásra kattintunk, akkor az a réteg bal értékét 0-ra csökkenti, tehát a layer (és a rajta levő objektum) elugrik balra. pageYMegadja a layer bal felső sarok abszolút távolságát függőlegesen mérve, pixelben. A viszonyítási pont mindig a globális dokument, még akkor is, ha az egy másik dokumentumban van megjelenítve. Példa:
Magyarázat:Ha a példában lévő hívatkozásra kattintunk, akkor az a réteg függőleges értékét 0-ra csökkenti, tehát a layer felfelé ugrik. parentLayerMegadja a layer szülő objektumát, mely lehet a window objektum vagy egy másik felérendelt layer. Példa:
siblingAboveAnnak a felette fekvő rétegnek a tulajdonságait és metódusait érhejük el általa, mellyel közös szülője van és a z-index= által meghatározott. Ha layerunk legfelül van az értéke : NULL Példa:
Magyarázat:A példában összesen öt réteget definiáltunk. Az utoljára definiált rétegen négy hivatkozás van. Minden hivatkozás annak a rétegnek nevét írja ki az üzenőablakban, melyre a réteg z-indexe mutat. siblingBelowAnnak az alatta levő rétegnek a tulajdonságait és metódusait érhejük el általa, mellyel közös szülője van és a z-index= által meghatározott. Ha layerunk legalul van az értéke : NULL srcMegadja a külső HTML fájl nevét, mely az adott réteghez hozzá van rendelve, így annak tartalmát képezi. Példa:
Magyarázat:A példában két réteget mutatunk, ahol az első réteg tartalma egy külső fájl : ujsag.htm A második rétegben a document write() metódus hívásával kiiratjuk a a külső fájl nevét a következő módon : window.document.extern.src topMegadja a layer bal felső sarok távolságát a fölérendelt dokumentumhoz képest, függőlegesen mérve, pixelben. Az abszolut címzéshez lásd : pageY. Példa:
visibilityMeghatározza, hogy a réteg látható-e vagy sem. Így a "hide" karakterlánc jelzi, hogy a réteg nem látható, "show" annyit tesz, hogy látható. Lehetséges még egy harmadik érték is : "inherit" azaz, szülőtöl örökölt . Példa:
Magyarázat:A példában két réteget definiáltunk. Mindkettőn van egy hivatkozás, melyre ha rákattintunk, akkor a másik réteg lesz látható. zIndexMeghatározza a layer objektum rétegpozicióját. Példa:
captureEvents()A rétegre vonatkozó események figyelését végzi. Úgy működik, mint a window captureEvents() esetében, de nem az egész kijelzőterületre vonatkoztatva. Meghívása a következő módon történik: window.document.layer_neve.caputeEvents() handleEvent()Továbbadja az eseményt egy olyan elemnek, mely képes azt feldolgozni. Ez a metódus is csak a layer objektumokra vonatkozó eseményeket kezeli, adja tovább. Úgy működik, mint a window handleEvent() metódusa. Meghívása : window.document.layer_neve.handleEvent() load()A réteg tartalmaként megad egy külső állományt.
Két paramétert vár: Példa:
moveAbove()Az egyik réteget a másik fölé helyezi. Paraméterként azt a layert várja, melyet le akarunk fedni. Ezáltal csak a rétegpozició változik, maga a layer nem mozog. Példa:
Magyarázat:A példában két layert definiáltunk. Ha a hívatkozásra kattintunk, akkor a másik kerül előtérbe. moveBelow()Az egyik réteget a másik alá helyezi. Paraméterként azt a layert várja, mellyel az aktuálist le akarjuk fedni. Ezáltal csak a rétegpozició változik, maga a layer nem mozog. moveBy()Eltolja a réteget a paraméterként átadott x és y
értékkel, ahol : Példa:
Magyarázat:A példában egy layert definiáltunk, melyen egy űrlap van. Azon két beviteli mező és egy nyomógomb. A gomb megnyomásával a beviteli mező értékeinek megfelelően mozgatjuk a layert. Az eval() metódus segítségével alakítjuk át a karakterláncot numerikus értékké, mivel a moveBy() számot vár, mely aztán mozgatja a réteget : le/fel és jobbra/ballra. moveTo()A megadott relatív pozicióba helyezi a réteget.
Két paramétert vár :: Példa:
Magyarázat:A példában egy layert definiáltunk, melyen egy űrlap van. Azon két beviteli mező és egy nyomógomb. A gomb megnyomásával a beviteli mező értékeinek megfelelően mozgatjuk a layert. Az eval() metódus segítségével alakítjuk át a karakterláncot numerikus értékké, mivel a moveTo() számot vár, melybe aztán elmozgatja a réteget. Figyelje meg:Ha a layer, mely a moveTo() metódust hívja, maga is egy másik layer-on található, akkor a mozgatás a külső réteghez viszonyul (relatív érték). moveToAbsolute()Ez a metódus ugyanúgy működik, mint a moveTo(), csak azzal a különbséggel, hogy itt a kijelzőablak abszolut koordinátáit adjuk át x és y paraméterként. releaseEvents()Befejezi az eseményfigyelést. Ez a metódus is csak a layer objektumokra vonatkozó eseményeket kezelte. Úgy működik, mint a window releaseEvent() metódusa. Meghívása : window.document.layer_neve.releaseEvent() resizeBy()Újraméretezi a layert a paraméterként átadott
érétékekkel : Példa:
Magyarázat:A példában egy réteget definiáltunk, melyen két hivatkozás található. Ha ezek valamelyikére rákattintunk, akkor az a layer látható részét ujraméretezi 20 ill.10 pixellel. resizeTo()A layer szélességét és magasságát beállítja a
paraméterként átadott értkekre, ahol : Példa:
Magyarázat:A példában egy réteget definiáltunk, melyen egy űrlap, két beviteli mező és egy nyomógomb látható. Ha rákattintunk a nyomógombra, akkor az ujraméretezi a layert a beviteli mező értékének megfelelően. Az eval() metódus segítségével alakítjuk át a karakterláncot számmá, mivel a resizeTo() számot vár. routeEvent()Továbbadja a eseményt a document objektumnak, ahonnan aztán mind lejjeb kerül, mindaddig míg egy olyan objektumhoz nem jut, mely képes azt feldolgozni. Pont úgy működik, mint a window routeEvent() metódusa. Meghívása : window.document.layer_neve.routeEvent(). |
|||||||||||||||||||||||||||||||||||||