Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana klasy elementu
Włodzimierz
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 30.11.2013

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


Witam.
Tworzę stronę wizytówkę swojej małej firmy, i potrzebuję wykonać rozwijane menu po kliknięciu na element.
Moim celem jest wykorzystanie jak najkrótszego kodu, czyli importowanie biblioteki nie wchodzi w grę.

Mniej więcej chce uzyskać taki efekt:
  1. <button>Menu</button>
  2. <div id="zm" class="klasa1">Linki<div>

a po kliknięciu na button:
  1. <button>Menu</button>
  2. <div id="zm" class="klasa2">Linki</div>


Szukając po internecie natrafiłem na coś takiego:
  1. <!DOCTYPE html>
  2. function changeColor(newColor) {
  3. var elem = document.getElementById("para1");
  4. elem.style.color = newColor;
  5. }
  6. </script>
  7. </head>
  8. <p id="para1" style="color: red;">Some text here</p>
  9. <button onclick="changeColor('blue');">blue</button>
  10. <button onclick="changeColor('red');">red</button>
  11. </body>
  12. </html>


Powyższy kod działa, lecz jedynie zmienia kolor, i potrzebuje dwóch buttonów. Próbowałem go zmodyfikować, lecz nic z tego nie wychodziło.

Proszę o pomoc (IMG:style_emoticons/default/smile.gif) Jeżeli będzie trzeba chętnie za jako taką pomoc zapłacę.
Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Włodzimierz
post
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 30.11.2013

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


Nie wiem, czy Cię dobrze zrozumiałem (nie działa): [edit: działa zapomniałem zamknąć- "}", lecz jedynie dodaje klasę"klasa2" do class="", i działa w jedną stronę]
  1. <!DOCTYPE html>
  2.  
  3. function myFunction()
  4. {
  5. document.getElementById('nav').className = 'klasa1 klasa2';
  6. }
  7.  
  8. <style>.klasa1{display: none;} .klasa2{display: block;}</style>
  9. </head>
  10.  
  11. <div id="nav" class="klasa1">Linki</div>
  12. <button onclick="myFunction()">menu</button>
  13.  
  14. </body>
  15. </html>




Cytat
Musi działać, pewnie nie umiesz tego używać wink.gif (wrzuć to, co ci nie działa)

JS to dla mnie czarna magia (IMG:style_emoticons/default/wink.gif) Kod który nie działa:
  1. <!DOCTYPE html>
  2.  
  3. function myFunction()
  4. {
  5. var h=document.getElementById("nav")[0];
  6. var typ=document.createAttribute("class");
  7. typ.nodeValue="democlass";
  8. h.attributes.setNamedItem(typ);
  9. }
  10.  
  11. var t = 0;
  12. function myFunction()
  13. {
  14. if(t == 0){
  15. var h=document.getElementById("nav")[0];
  16. var typ=document.createAttribute("class");
  17. typ.nodeValue="democlass1";
  18. h.attributes.setNamedItem(typ);
  19. t = 1;
  20. }
  21. else
  22. {
  23. var h=document.getElementById("nav")[0];
  24. var typ=document.createAttribute("class");
  25. typ.nodeValue="democlass";
  26. h.attributes.setNamedItem(typ);
  27. t = 0;
  28. }
  29. }
  30.  
  31. <style>.democlass{display: none;} .democlass1{display: block;}</style>
  32.  
  33. </head>
  34.  
  35. <div id="nav" class="democlass">Linki</div>
  36. <button onclick="myFunction()">menu</button>
  37.  
  38. </body>
  39. </html>



Cytat
Lepiej wywalić duplikatu i przenieść kod przed if'a

Nie bardzo wiem o co chodzi.

Ten post edytował Włodzimierz 1.12.2013, 14:23:45
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 27.12.2025 - 14:53