
A mellékelt példa megnyitása előtt szükséges egy HTMLPlusTIME03 nevű virtuális könyvtár létrehozása, mely a példa könyvtárára mutat. Ehhez futtassa le a mellékelt CreateVD.js parancsállományt.
A HTML + TIME 2.0 továbbfejlesztett objektummodelljének egyik eleme az EXCL objektum. Az objektum lehetővé teszi, hogy egy adott időben egy gyermekobjektum funkcionáljon, majd azt időzítetten kövesse a másik objektum működése.
Az EXCL elem számtalan property-vel és metódussal rendelkezik, melyekkel az időzítés és a kontrolok viselkedése befolyásolható. Lássuk a leggyakrabban használható property-ket.
BEGIN attribútum
Az Internet Explorer 6.0 verziójától kezdve érhető el a property, melynek segítségével meghatározható az a várakozási idő, melynek el kell telnie a folyamat megindulása előtt. A folyamat kezdetének időpontja megadható szabályos időformátumban, melynek a szintaxisa a következő: h:min:s. A formátum egyes elemei:
- h: óra-összetevő
- min: perc-összetevő
- s: másodperc-összetevő
A kezdet megadható azonban egy egész szám formájában. Például BEGIN=”5”. Az alapértelmezett érték nulla.
A harmadik megadási mód az „indefinite” kulcsszó feltüntetésével történik, amikor nem definiáljuk a kezdetet, hanem valamilyen eseményhez köthetjük azt. Ilyen lehet a beginElement metódus meghívása.
DUR attribútum
A DUR property segítségével adhatjuk meg, hogy mennyi ideig tart egy-egy folyamat a szekvencián belül. Ezek az egyes folyamatoknál eltérők is lehetnek. Megadhatjuk ezt egy egész számmal, mely másodperces időtartamot jelent, vagy megtehetjük, hogy nem definiáljuk, ekkor az „indefiniate” kulcsszót használhatjuk.
REPEATCOUNT attribútum
Az attribútum segítségével megadható, hogy a folyamat a szekvencián belül hányszor indulhat újra. Az alapértelmezett érték 1, vagyis egyszer hajtódik végre a folyamat. Az újraindulás számát egész számként adjuk meg.
AUTOREVERSE attribútum
Az attribútum segítségével megadható, hogy az adott objektum kezdje-e elölről a műveletvégzést, vagy sem. A lehetséges értékek TRUE és FALSE. Az alapértelmezett érték a FALSE, vagyis a műveletvégzés nem ismétlődik.
REPEATDUR attribútum
Megadható egy időintervallum, mely alapja lesz a következő számításnak: az egyes műveletek DUR attribútumban megadott értékei összeadódnak, és a REPEATDUR attribútumban megadott szám elosztásra kerül a kapott értékkel. Ebből megkapjuk, hogy az egyes művelek hány alkalommal ismétlődhetnek.
Az EXCL elem rendelkezik hasznos metódusokkal is, melyekből ismertetünk néhányat. A metódusokat úgy használhatjuk, hogy az objektum neve után adjuk meg a metódusok neveit egy ponttal elválasztva. Például myexcl.metódus().
beginElement metódus
Elérhetjük, hogy a szekvencia elinduljon. A metódust egy gombnyomás eseményében hívhatjuk meg legkézenfekvőbb módon. A metódusnak sem paramétere, sem pedig visszatérési értéke nincs.
Pl.: objektum.beginElement();
endElement metódus
A szekvencia megállítására adhatunk utasítást.
Pl.: objektum.endElement();
resetElement metódus
A metódus segítségével az összes addig végrehajtott változás törlődik az objektumból, és az objektum visszaáll az eredeti állapotába. A metódusnak sem paramétere, sem pedig visszatérési értéke nincs.
Pl.: objektum.resetElement();
Felhasználás a gyakorlatban
A mellékelt példában egy olyan szekvenciát valósítunk meg, mely 2 másodperces várakozás után jelenít meg egy újabb mondatot, vagyis indít el egy újabb folyamatot. Minden folyamat 3 másodpercig tart. Annak érdekében, hogy a time2 viselkedésformát ráhúzhassuk az EXCL elemen belül elhelyezendő kontrolokra, meg kell adni a szükséges deklarációkat.
Első lépésként definiálnunk kell a HTML oldalunkon a speciális névteret, hogy a HTML+TIME objektumait elérhessük.
<HTML xmlns:t="urn:schemas-microsoft-com:time" XMLNS:MSHelp="http://msdn.microsoft.com/msHelp">
Dinamikusan importáljuk a szükséges névteret.
document.namespaces("t").doImport("#default#time2");
És a HTML kód fejlécében létrehozunk egy stílusosztályt.
<STYLE> .time { BEHAVIOR: url(#default#time2) }
</STYLE>
Az EXCL elemen belül tetszőleges számú elemet helyezhetünk el (DIV, vagy SPAN kontrolokat), mindet egyedi azonosítóval ellátva. A BEGIN attribútum értékét minden kontrolnál beállítottuk, így érhető el, hogy 2 másodpercenként kövesség egymást a kiírások.
A DUR attribútum értéke 3, hogy a folyamat ennyi másodpercig tartson.
<t:excl id="myExcl">
<DIV ID="div1" CLASS="time" BEGIN="0" DUR="3" style="...">Első sor...</DIV>
<DIV ID="div2" CLASS="time" BEGIN="2" DUR="3" style="...">Második sor...</DIV>
...
</t:excl>
A kontrolokra ráhúztuk a time2 viselkedésformát. Ezt a CLASS attribútumban megadott „time” érték jelzi.