Autor | Zpráva | ||
---|---|---|---|
jefitto44 Profil |
#1 · Zasláno: 8. 1. 2015, 13:02:25
Využívam jednoduchý slidedown zobrazovač divka s display:none.
<script type="text/javascript"> function showFaq() { $(".question").click(function() { $(this).next("div").slideDown(); }); } </script> Problém je ten, že na daný div musím kliknúť dvakrát, aby sa to spustilo. Divka sa vypisujú v cykle pod sebou a vyzerá to asi takto while($row=mysql_fetch_assoc($query)) { echo '<li><div class="question" onclick="showFaq()">'.$row["question"].'</div>'; echo '<div class="answer">'.$row["answer"].'</div></li>'; } Funguje to tak, že ak kliknem na div.question prvýkrát, nič sa nestane. Ak kliknem druhýkrát, už to ide tak ako má... vie niekto, kde môže byť zadrheľ? Chyby, ani upozornenia nie sú |
||
pcmanik Profil |
jefitto44:
Prvý krát priradíš udalosť onclick. Pri druhom kliknutí sa až spustí, stačí funkciu showFaq() upraviť takto: function showFaq() { $(this).next("div").slideDown(); } $(".question").click(function() { $(this).next("div").slideDown(); }); |
||
jefitto44 Profil |
#3 · Zasláno: 8. 1. 2015, 13:21:30
Takže funguje to, som ti zaviazaný... teraz keď potrebujem, aby sa to pri ďalšom kliku zatvorilo (slide up) Ako na to? Teraz je onclick vyhodený a vyzerá to takto
<script type="text/javascript"> $(document).ready( function () { $(".question").click(function() { $(this).next("div").slideDown(); }); }) </script> |
||
pcmanik Profil |
#4 · Zasláno: 8. 1. 2015, 13:43:19
jefitto44:
Namiesto slideDown stačí použit slideToggle() |
||
jefitto44 Profil |
#5 · Zasláno: 8. 1. 2015, 13:48:36
Presne to som predchvíľou skúšal, len som napísal toogle, nie toggle :D Diky za pomoc
|
||
Časová prodleva: 10 let
|
0