• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Podmiana css z użyciem js?

Object Storage Arubacloud
+1 głos
382 wizyt
pytanie zadane 25 czerwca 2015 w JavaScript przez Tpk Nałogowiec (40,100 p.)
Witam Na swoim forum chciałem zrobić przycisk menu (dla mniejszych rozdzielczości) po którego naciśnięciu chowałoby się i pokazywało moje menu. Tak więc stworzyłem sobie przycisk:

<a href="#" class="ui-mobile" onclick="mini_menu()"><i class="fa fa-bars"></i></a>

po którego kliknięciu wywoływana jest funkcja mini_menu.

Jednakże nie wiem jak dodać wartość css dla danej klasy.

document.getElementbyClass("box_menu")

Chciałbym w tym miejscu dodać margin-top: -400px; dla klasy box_menu - dzięki temu menu zostałoby schowane u góry. Po ponownym naciśnięciu przycisk musiałby się zachować inaczej (usunąłby tę wartość) jednak tego też nie potrafię wykonać.

 

Przycisk jest ustawiony na sztywno i widoczny dzięki media queries a strona nie jest responsywna dlatego jest to taki myk.

1 odpowiedź

0 głosów
odpowiedź 25 czerwca 2015 przez Comandeer Guru (601,110 p.)

Zacznijmy od sprawy dostępności: Twój link nie ma jakiegokolwiek tekstu! Przez to nie ma jakiejkolwiek treści, co nie jest zbyt dobre dla wszelkiej maści czytników ekranowych. Proponuję spojrzeć jak robi to np. BS, czyli dodaje dodatkowy element z treścią, który jest następnie ukrywany. Mniej więcej coś takiego: http://jsfiddle.net/Comandeer/a3fgsj06/1/

Druga sprawa dotyczy sposobu, w jaki przypinasz klik - jest to od dawna uważane za złą praktykę: https://pornel.net/onclick
Tego typu rzeczy powinny być przypinane przy pomocy JS

Trzecia sprawa to to, że to nie link, a przycisk, bo chcesz spowodować jakąś akcję na stronie bez przechodzenia pod inny adres.

Co do natomiast operacji na menu: zamiast document.getElementsByClassName (nie ma metody document.getElementByClass!) polecam document.querySelector. Zmianę CSS-a menu możesz spowodować zmieniając odpowiednio klasę tego elementu przy pomocy elem.classList.toggle (lub http://youmightnotneedjquery.com/#toggle_class jeśli potrzebujesz wsparcia dla starszych IE).

Ostatecznie rozwiązanie może wyglądać tak: http://jsfiddle.net/Comandeer/z1p4syLz/1/

Podobne pytania

+2 głosów
1 odpowiedź 118 wizyt
pytanie zadane 2 sierpnia 2021 w JavaScript przez xjafajx Użytkownik (740 p.)
0 głosów
2 odpowiedzi 704 wizyt
pytanie zadane 9 października 2017 w Java przez maly93 Użytkownik (640 p.)
0 głosów
1 odpowiedź 445 wizyt
pytanie zadane 5 maja 2016 w JavaScript przez Piter Użytkownik (770 p.)

92,572 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...