Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
Visual Basic
Pohyb objektem ve VBS
10. července 2001, 00.00 | V tomto článku si ukážeme jak rozpohybovat obrázek, nebo i jiný objekt HTML
stránky s pomocí jednoduchého VisualBasic Skriptu.
V tomto článku vám převedu, jak pomocí jednoduchého VisualBasic skriptu rozpohybovat na vaší HTML stránce obrázek nebo i jiný objekt, kterému lze nastavit absolutní pozici a je u něj definovaná výška a šířka.
V příkladu budeme potřebovat dva objekty. První je document.body a druhý document.all.nazev_objektu. Konkrétně budeme potřebovat z prvního objektu hodnoty clientwidth a clientheight v nichž je přesná šířka a výška okna prohlížeče pro samotný obsah HTML stránky v pixelech (bez případných scrollbarů, příkazových lišt atd...). V případě, že HTML stránka je vyšší či širší než okno prohlížeče a my chceme aby byl "létající" předmět vždy v zobrazované části HTML stránky, budeme potřebovat ještě hodnoty scrollleft a scrolltop, které nesou informace o tom, o kolik pixelů bylo stránkou posunuto vertikálně a horizontálně.
Z druhého objektu budeme potřebovat hodnoty offsetwidth a offsetheight, které obsahují šířku a výšku objektu se kterým budeme hýbat. Pro určení absolutní pozice na stránce pak tomuto objektu budeme přidělovat CSS styl pixelleft a pixeltop.
Nejdříve budeme na stránku muset umístit objekt se kterým budeme pohybovat. V našem příkladu se jedná o obrázek, takže HTML tag bude vypadat následovně:
<IMG SRC="obrazek.gif" id="ruze" style="LEFT: 0px; TOP: 0px; POSITION: absolute;">
Abychom mohli s objektem jednoduše nakládat pomocí skriptu, budeme mu muset nastavit ID. V tomto příkladu je ID ruze. Musíme obrázku (objektu) nastavit absolutní pozici. Dále pak budeme muset do tagu BODY vložit událost onLoad="Inicialitace", která inicializuje náš pohyb objektem. Součástí stránky je samozřejmě samotný skript:
|
Skript se bude spouštět v pravidelném intervalu, který jsme definovali v inicializační fázi skriptu. Skript nejdříve určí budoucí pozici objektu a maximální délku, o kterou se může objekt v rámci okna pohnout. Následně otestuje, zda objekt náhodou nenarazí (nebo se dokonce neposune za) některý z okrajů HTML stránky. Test spočívá ve srovnání nové pozice objektu a součtu maximálního pohybu s hodnotou případného posunu stránky. Pokud objekt přesáhne některého z okrajů stránky, nastaví se budoucí pozice na hodnotu, která je součtem maximálního pohybu s hodnotou případného posunu stránky, tím zajistíme, že objekt zůstane viditelný celý a nastavíme proměnné x1 nebo y1 (nebo obě - záleží na tom, do kterého okraje či okrajů objekt narazí) na opačnou hodnotu (pokud objekt narazí do pravého nebo dolního okraje bude nová hodnota záporná, v opačném případě bude hodnota kladná). Na závěr nastavíme objektu absolutní hodnotu obsaženou v proměnných x a y.
Takže tímto jsem vám popsal jednoduchý VB skript, který rozhýbe různé objekty na vaší HTML stránce a tím jí udělá interaktivnější. Bohužel tento skript funguje jen v prohlížečích Internet Explorer 5 a vyšší (možná funguje i v IE 4, ale není to odzkoušeno). Ovšem není problém tento skript přepsat do JavaSriptu, pak by měl běžet i na prohlížečích Netscape Navigator, které nemají implementovánu podporu Visual Basic skriptu. Ukázková stránka se nachází zde. Příklad si můžete stáhnout v zazipovaném archivu.
-
25. listopadu 2012
-
30. srpna 2002
-
10. října 2002
-
4. listopadu 2002
-
12. září 2002
-
25. listopadu 2012
-
28. července 1998
-
31. července 1998
-
28. srpna 1998
-
6. prosince 2000
-
27. prosince 2007
-
4. května 2007