Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] ukrywanie kilku divów
!*!
post
Post #1





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


JS:

Kod
function a(c){var t=document.getElementById('z');if(t)t.className=c;}
function b(divId, divWithText){var div = document.getElementById(divId);if(div.style.display == 'block'){div.style.display = 'none';divWithText.innerHTML = '<img src="2.png" alt="" />';}else{div.style.display = 'block';divWithText.innerHTML = '<img src="1.png" alt="" />';}}


przykładowo do pojedyńczego diva:

  1. <div class="gdzie_lista">Szybki kontakt
  2. <div style="cursor:pointer;" class="textToChange" onclick="javascript:b('szybkikontakt', this);"><img src="1.png" alt="" /></div>
  3.  
  4. <div style="display: block" id="szybkikontakt" class="divA">
  5. www<br />
  6. email<br />
  7.  
  8.  
  9. </div>
  10. </div>


działa to bez problemu, jednak na stronie mam kilka divów ktore działają na tej samej zasadzie i chciałbym zrboić link aby otwierać lub zamykać wszystkie divy

  1. <div style="cursor:pointer;" class="textToChange" onclick="javascript:b('div1'; 'div2', this);"><img src="1.png" alt="" /></div>


tylko zabardzo nie wiem jak zapytać o to w oncliku


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Babcia@Stefa
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

Ostrzeżenie: (0%)
-----


Przyznam się że nie czytałem posta ze zrozumieniem haha.gif ale zapewne chodzi Ci o widoczność diva.

To powinno podziałać:
Kod
document.getElementById('id_diva').style.visibility = 'hidden';


A użycie statyczne (bez automatyki javascriptu):
  1. <div id="id_diva" style="visibility: hidden;">
  2. Haha jestem ukryty ;>
  3. </div>


Dziękuję, Babcia@Stefa


--------------------
Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian
Go to the top of the page
+Quote Post
!*!
post
Post #3





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


To mógłbyś przeczytać nawet temat, chodzi o ukrywanie KILKU diwów pod jednym linkiem


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
lord_t
post
Post #4





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

Ostrzeżenie: (0%)
-----


Masz tu dwie funkcje b2, obie robią to samo, ale trochę inaczej (przeanalizuj sobie):
  1. <script type="text/javascript">
  2. <!--
  3.  
  4.  
  5. function b2(tab, divWithText)
  6. {
  7. for(i=0;i<tab.length;i++)
  8. {
  9. var div = document.getElementById(tab[i]);
  10. if(div.style.display == 'block')
  11. div.style.display = 'none';
  12. else
  13. div.style.display = 'block';
  14. }
  15.  
  16. if(div.style.display == 'block')
  17. divWithText.innerHTML = 'obrazek2';
  18. else
  19. divWithText.innerHTML = 'obrazek1';
  20. }
  21.  
  22. function b2(tab, divWithText)
  23. {
  24. var div = document.getElementById(tab[0]);
  25. if(div.style.display == 'block')
  26. {
  27. for(i=0;i<tab.length;i++)
  28. document.getElementById(tab[i]).style.display = 'none';
  29. divWithText.innerHTML = 'obrazek2';
  30. }
  31. else
  32. {
  33. for(i=0;i<tab.length;i++)
  34. document.getElementById(tab[i]).style.display = 'block';
  35. divWithText.innerHTML = 'obrazek1';
  36. }
  37. }
  38.  
  39. //-->


Każdą z nich wywołuj się w ten sam sposób. Przykład użycia:
  1. <div onclick="javascript:b2(Array('pierwszy','maly','redx'), this);">obrazek1</div>
  2.  
  3. <div style='display:block;' id='pierwszy'>Pierwszy</div>
  4. <div style='display:block;'id='redx'>Czerwony</div>
  5. <div style='display:block;'id='maly'>Mały</div>


--------------------
Go to the top of the page
+Quote Post
!*!
post
Post #5





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Nie zrozumieliście, wiem jak ukryć, pokazać divy, przykład podałem... chodzi mi o to jak już mam kilka divów które sie rozwijają to chciałbym aby wszytkie się rozwijały po kliknięciu " rozwiń wszystkie"...


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
lord_t
post
Post #6





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

Ostrzeżenie: (0%)
-----


Jeśli chodzi Ci o animację jakąś to zobacz show() i hide() w frameworku jQuery (link w moim podpisie).
A jeśli mają się pokazać po prostu to wystarczy okroić kod js który podałem.


--------------------
Go to the top of the page
+Quote Post
-Gość-
post
Post #7





Goście







sęk w tym że zabardzo nie wiem jak to zrobić nie znam sie na JS aż tak... ukryć/ pokazać div zrobiłem, kilka divów działa na tej zasadzie, ale nie wime jak je wszystkie podpiąć pod jeden link.
Go to the top of the page
+Quote Post
l0ud
post
Post #8





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Jeżeli nie znasz się specjalnie na JS, zacznij wykorzystywać framework JQuery [tak jak poprzednik napisał]
http://jquery.com/

Tam masz odpowiednie selektory i pokazanie/ukrycie kilku divów to najczęściej linijka kodu.


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
!*!
post
Post #9





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


tylko po co mi kobyła do linijki skryptu? Poza tym jQ nie mogę chyba wykorzystać komercyjnie


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
l0ud
post
Post #10





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Zgodnie z licencją MIT, można. Wg. mnie 15KB (przy kompresji gzip) kodu w zamian za dużą pomoc przy pisaniu wielu skryptów w JS to mała cena.


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 18:39