Autor | Zpráva | ||
---|---|---|---|
LaShana Profil |
#1 · Zasláno: 17. 8. 2021, 16:15:21
Zdravím, poradil by mi prosím někdo, jak na úpravu skriptu?
Jsem začátečník - javaskript opravdu neumím a protože jsem potřebovala předělat své stránky, inspirovala jsem se tady Skrývané záloľky pomocí DHTML, ale poté co jsem to dodělala a začala přidávat další věci, jsem zjistila, že mám problém. Pokud na některou (jinou než tu první) z kotev odkážu "zvenčí" (odkaz z jiné stránky), tak to nefunguje jak by mělo - odkaz mám správný - napíše se i jeho adresa do adresního řádku, zobrazí mi to, ale vždy jen tu první "kotvu" tu co je skriptem nastavena jako pomocná proměnná - z toho co jsem vyhledávala si myslím (doufám, že ne naprostou koninu), že bych měla nějak navázat událost onclick na onload - myslím si, že to prostě čeká na kliknutí, ale nevím jak to mám udělat a nepovedlo se mi to najít. Nebo "přečíst proměnnou" z adresního řádku (to jsem sice našla) a nechat to načíst, ale to taky nevím jak... Děkuji |
||
Keeehi Profil |
#2 · Zasláno: 17. 8. 2021, 20:02:15
No, simulovat kliknutí samozřejmě lze. Ale ve tvém případě je to naprosto zbytečné. Ty chceš do té defaultní hodnoty nacpat to, co je v url. Tak to tam dej. Najdeš to v
location.hash .
poznámka 1: ta hodnota začíná # který budeš chtít odstranit než ji tam vložíš. poznámka 2: ta část v url může chybět takže v takovém případě to bude chtít přidat fallback na nějakou defaultní hodnotu. Což není nic fancy, jen jednoduchý if. |
||
Časová prodleva: 14 dní
|
|||
LaShana Profil |
Ahoj děkuji za odpověď
Dlouho jsem zkoušela, co jsi mi radil + co jsem našla, ale nepovedlo se mi to... Kde mám chybu? <script> hash = window.location.hash.substr(1); window.alert (hash); var hash = window.location.hash.substr(1); function zobraz(polozka){ if(typeof window.location.hash != "undefined" && window.location.hash == "prvni"){ } var zobrazena = "prvni"; // pomocna promenna, na zacatku nastavena na jmeno zobrazene polozky function zobraz(polozka){ if (document.getElementById){ document.getElementById(zobrazena).style.display = "none"; // skryje předchozí polozku document.getElementById(polozka).style.display = "block"; // zobrazi se nakliknuta polozka zobrazena = polozka; // aktualne zobrazena polozka se ulozi do globalni promenne, aby se pozdeji dala skryt return false; // odkaz neproklikne na href } else { if(document.stylesheets) document.stylesheets["zalozky"].disabled = true; // v nekterych browserech (IE 4) vypne styl nezobrazovani, aby se polozky alespon zobrazily return true; // odkazy budou proklikavat na href } } </script> Moderátor Kajman: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
|
||
Kajman Profil |
Při načtení stránky nevoláte funkci zobraz s parametrem z proměnné hash.
Edit: Skrývané záložky pomocí DHTML |
||
LaShana Profil |
#5 · Zasláno: 2. 9. 2021, 14:44:58
Kajman:
Děkuji za odpověď, ale bohužel nevím jak bych to měla udělat. Neživím se tím, ani nepředpokládám, že by se tak v budoucnu stalo. Chtěla jsem si jen usnadnit práci s následnou editací webu (čas od času potřebuji něco přidat a na přechozích stránkách co jsem měla to byl opruz), bohužel jsem si ji použitím tohoto skriptu akorát přidělala, budu to muset celé předělat. |
||
anonym_ Profil * |
#6 · Zasláno: 2. 9. 2021, 18:10:58
LaShana:
Proč se nepodíváš do kódu? JS je normálně viditelný. Skrývané záložky pomocí DHTML - živá ukázka |
||
Časová prodleva: 3 roky
|
0