Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][CSS]Znikający i pojawiający się DIV po najechaniu
Forum PHP.pl > Forum > Przedszkole
roghatt
Witam
Jak zrobić aby wszystko co jest w divie znikało np. po 5 sekundach (jak kursor jest poza divem), jak najedziemy kursorem na div to wtedy wszystko się pojawia... aby te przejścia były płynne.
Jakieś strony z takimi podpowiedziami są?

pozdrawiam
thek
Słowa kluczowe: jquery hide show delay mouseenter mouseleave
roghatt
wlasnie nie chodzi o kliknięcie a o najechanie i zjechanie kursorem smile.gif
poszukam z tymi słowami co podaliście
qrzysztof
JQuery rzeczywiście bardzo ułatwia. Ale jeśli nie, da się również samym JavaScriptem. Słowa kluczowe:

onmouseout
setTimeout(function(){}, 5000)
style.display='none'
roghatt
samym JS próbowałem, ale div mi po 5 sekundach znika, ale później nie wiem jak zrobić aby się znowu pojawił jak kursor pojawi się w okolicach tego diva.
thek
Wtedy musisz dla obiektu przypisać display:block a div się powinien pojawić. Problemem jest to, że najlepiej robić to tak: ustawiasz sobie jakiś element, na który najeżdżając pojawia się div, gdy z niego schodzisz, to po 5 sekundach ów div znika. Nie możesz zrobić bezpośrednio po najechaniu na div konkretny tego znikania i pojawiania, ponieważ gdy dasz display:none, to zniknie on z drzewa struktury dokumentu i nie będzie możliwe jego "najechanie", bo nie da się najechać na coś, co nie istnieje. Musisz mieć jakiś najeżdżalny "element pomocniczy".
papryk
  1. <script src="http://code.jquery.com/jquery-1.5.js"></script>
  2. <script type="text/javascript">
  3. $(document).ready(function(){
  4. $('#hideMe').mouseleave(function(){
  5. $(this).fadeOut(500);
  6. })
  7. $('#showMe').mouseenter(function(){
  8. $('#hideMe').fadeIn(500);
  9. })
  10. });
  11. </head>
  12. <div id="showMe" style="width:200px; height:200px;">
  13. <div id="hideMe" style="width:200px; height:200px; background-color:#060;"></div>
  14. </div>
  15. </body>
  16. </html>


Takie coś wymyśliłem, pozdrawiam.
thek
Czyli użyłeś dokładnie tego papryk co napisałem tyle że zamiast show i hide użyłeś innego efektu... ale zapomniałeś jeszcze użyć delay()
$(this).delay(5000).fadeOut(500);
Powinno załatwić sprawę zamknięcia po 5 sekundach od wyjechania z pola.
-jagon-
Odkopuję stary temat:) Wszystko działa, pytanko tylko co zrobić w przypadku 3 takich divów? w jaki sposób nadać skryptowi odpowiednie właściwości, dzięki czemu, do każdego diva z osobna będzie przypisywana inna tablica.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.