Autor | Zpráva | ||
---|---|---|---|
Pavel Dumbrovský Profil |
#1 · Zasláno: 10. 6. 2010, 11:16:16
Dobrý den,
potřebuju poradit. Obyčejně tento problém řeším v pohodě pomocí stylů, když mám stránky v php, tak se prostě před každý aktuálně otevřený odkaz přihodí nějaká span class, která mu dá tučnost. Jak to ale řešit, když mám fotogalerii v JS a potřebuji ztučnit číslo právě zobrazené stránky? Pomocí css to asi nepůjde, protože a:active j k ničemu, to ztuční pouze na okamžik, kdy uživatel ještě drží tlačítko myši.. Nějaký nápad? Díky. |
||
panther Profil |
#2 · Zasláno: 10. 6. 2010, 11:45:18
Pavel Dumbrovský:
úplně stejně, jak když chceš najít aktivní položku v menu - je to ve FAQ PHP zde na diskusi i na spoustě jiných míst. „Pomocí css to asi nepůjde“ pomoví CSS to půjde, nic jiného než CSS tučný text udělat neumí. |
||
Trejpa Profil |
#3 · Zasláno: 10. 6. 2010, 12:41:01
Pavel Dumbrovský:
„Nějaký nápad?“ Javascriptem zaměřit položku (třeba podle ID) a přiřadit/změnit jí className. „a:active j k ničemu, to ztuční pouze na okamžik, kdy uživatel ještě drží tlačítko myši..“ Ano, k tomu :active slouží. Použije se na odkaz po dobu mezi kliknutím a načtením nové stránky. V době rychlého internetu je už téměř k ničemu. panther: „nic jiného než CSS tučný text udělat neumí“ Do důsledku: InnerHTML a nahrazovat řetězec "*" za "<b>*</b>". (1000) |
||
panther Profil |
#4 · Zasláno: 10. 6. 2010, 14:45:24
Trejpa:
„Do důsledku: InnerHTML a nahrazovat řetězec "*" za "<b>*</b>".“ ano, jedna možnost to je, ale v opravdovém důsledku je to opět font-weight: bold, která je u <b> (a <strong>) defaultním CSS. |
||
Pavel Dumbrovský Profil |
#5 · Zasláno: 10. 6. 2010, 16:32:48
panther:
Jedná se o JS skript, při klikání na čísla stránek se rotuje obsah, stránka se nerefreshuje, takže PHP mi tady bude k ničemu. Trejpa To už zní lépe, bohužel jsem JS amatér, takže nedokážu provést to, co píšeš. Ty čísla stránek pro JS galerku si generuji cyklem v PHP, takže bych jim mohl dávat třeba id="id1", id="id2", atd.. Ale nevím, jak v JS rozpoznat aktivní položku. |
||
Trejpa Profil |
#6 · Zasláno: 10. 6. 2010, 17:16:40
Pavel Dumbrovský:
Chtělo by to odkaz na příklad. Takto budeš dostávat jen obecné rady. Můžeš třeba v PHP vygenerovat do JS pole s ID odkazů a odkazy reagovat na stisk/puštění tlačítka myši (na onclick máš zřejmě navázánu svou galerii) zrušením tříd všech odkazů a právě tomu kliknutému třídu s tučností nastavit (takto). |
||
Pavel Dumbrovský Profil |
#7 · Zasláno: 10. 6. 2010, 23:32:55
www.xpowercup.cz
jestli to pomůže, dole je ta zmíněná galerka v JS.. |
||
Pavel Dumbrovský Profil |
#8 · Zasláno: 11. 6. 2010, 20:58:57
Trejpo? :)
|
||
Trejpa Profil |
#9 · Zasláno: 11. 6. 2010, 21:51:56 · Upravil/a: Trejpa
Pavel Dumbrovský:
Díval ses na moje řešení? Zkoušel jsi ho? Tobě jde o tyto odkazy, že? <a href="#" class="toc">1</a> <a href="#" class="toc">2</a> Vytvoř je tak, jak jsem ti napsal v ukázce výše. Přidej můj skript (pomocí PHP vygeneruj to pole s ID odkazů, pokud se tedy jejich počet bude měnit) a mělo by to fungovat. No, vlastně, mají-li si zachovat současnou třídu, tak uprav skript aby ve výchozím stavu nastavoval prvkům třídu "toc" a aktivním "toc b". |
||
Pavel Dumbrovský Profil |
#10 · Zasláno: 13. 6. 2010, 17:46:38
Trejpa:
Díky moc, funguje to skvěle. Předtím jsem ten odkaz nějak přehlídnul. Seš hodnej, že sis dal práci s názornou ukázkou, ještě jednou děkuju, máš to u mě. :) Jen ještě co je třeba přidat, aby byl na začátku tučně první odkaz, čili aktivní ID 1? |
||
Trejpa Profil |
#11 · Zasláno: 13. 6. 2010, 17:57:14
Pavel Dumbrovský:
Máš dvě možnosti: 1) při generování PHP rovnou tomu prvnímu odkazu nastav class="toc b" 2) do stránky za tu galerii vlož <script>a('id1')</script> |
||
tayger Profil * |
#12 · Zasláno: 13. 6. 2010, 18:25:43
je zvláštní že nikdo nezmínil možnost DOM object.style.font-weight = "bold"; :-D
|
||
Trejpa Profil |
#13 · Zasláno: 13. 6. 2010, 18:30:48
tayger:
Úmyslně. Je praktičtější měnit třídu než konkrétní styly. |
||
tayger Profil * |
#14 · Zasláno: 14. 6. 2010, 12:59:05
Trejpa:
To nepopírám, ale pokud jde jen o jeden odkaz, tak proč na to brát hned kladivo? :-) |
||
Trejpa Profil |
#15 · Zasláno: 14. 6. 2010, 14:07:40
tayger:
Kladivem by bylo třeba tahání frameworku. Změna třídy slouží obecnosti. Vzpomene-li si za půl roku Pavel (který zatím stejně moc Javascriptu nerozumí), že odkaz nemá být (jen) tučný, ale má být (i) zelený, skloněný, na žlutém pozadí a červeně tečkovaně ohraničený, tak nemusí lézt do skriptu a měnit několik DOM vlastností, ale stačí mu jednoduchý zásah do stylu. |
||
Časová prodleva: 15 let
|
0