Náhrada ovládacího prvku posuvník pomocí JavaScriptu
Jeden z pěkných ovládacích prvků mnoha Windows dialogů je takzvaný potenciometr neboli posuvník. V tomto článku si ukážeme, jak můžeme pomocí JavaScriptu vyrobit alespoň částečnou náhradu tohoto prvku na našich HTML stránkách.
Na rozdíl od standardního posuvníku nemůžeme jeho náhradu v HTML stránce ovládat tažením, ale pouze kliknutím na nové hodnotě – i přes toto omezení se prvek dá ovládat vcelku „intuitivně“. Vyzkoušejte si to:
Kromě samotné HTML stránky si musíme připravit dva obrázky, první (pojmenovaný zde „jezdec.gif“) zobrazuje jezdce, tedy onu šipku směřující dolů, druhý („linka.gif“) je stejných rozměrů jako první obrázek a zobrazuje prázdnou čáru.
Celý příklad jsme v tomto případě umístili do nadřazené tabulky a do formuláře, pojmenovaného „dest“. V něm jsme vytvořili textové pole se jménem „field1“, do nějž při pohybu posuvníku zapisujeme aktuální pozici-hodnotu prvku posuvník. Toto není nezbytně nutné, je však dobré zachovat alternativní způsob zadání hodnoty pro návštěvníky bez JavaScriptu.
Zde je HTML kód zmíněné tabulky:
|
V druhém řádku tabulky, v místě vyhrazeném pro posuvník, voláme funkci createSlider(length,pos). Ta zabezpečuje vykreslení posuvníku o délce length a výchozí pozici jezdce. Zde je její kód – umístěn může být nejlépe v hlavičce stránky:
|
Funkce vytvoří jednořádkovou tabulku o length sloupcích, kdy každý sloupec obsahuje obrázek linky nebo jezdce, zapouzdřený do odkazu. U odkazu definujeme handler události onclick, který zabezpečí vlastní funkčnost posuvníku. V Internet Exploreru bychom se obešli i bez odkazu (handlert onclick lze definovat i pro obrázek), Netscape však uznává onclick pouze pro odkaz, pro obrázek nikoliv.
V závěru funkce nastavujeme proměnnou iCurrPos. To je pomocná proměnná, udávající aktuální pozici jezdce. Samozřejmě ji musíme v kódu definovat:
|
Poslední částí příkladu je samotný handler události onclick, zde pojmenovaný sliderOnclick(index). Parametr index na vstupu funkce určuje číslo odkazu – a tím i pozici posuvníku – na které došlo ke klepnutí myší (pro obsluhu více posuvníků v rámci jedné stránky bychom museli přidat další parametr a kód trochu rozšířit). Zde je funkce sliderOnclick():
|
V první části funkce nahradíme obrázek jezdce na původní pozici posuvníku obrázkem linky. Poté změníme hodnotu pomocné proměnné iCurrPos, udávající aktuální pozici jezdce. Provedeme nějaký další kód, který chceme při posuvu dělat – v tomto případě pouze přepisujeme aktuální pozici jezdce do formulářového políčka, ale můžeme například zvětšovat/zmenšovat závislý obrázek apod. Nakonec zobrazíme obrázek jezdce na jeho nové pozici.
A to je pro tentokrát vše. Přeji příjemnou zábavu s touto drobnou hříčkou.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Co je to DNSSEC, jak funguje a jak si ho nastavit?
14. srpna 2024 -
inPage AI: Revoluční nástroj pro tvorbu webů
3. července 2024 -
9 nejzajímavějších doménových koncovek
19. srpna 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024