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

Jak za pomocą javascriptu zmienić style(css) elementu który jest hover?

Object Storage Arubacloud
0 głosów
1,690 wizyt
pytanie zadane 21 kwietnia 2017 w JavaScript przez Mimoid Użytkownik (760 p.)

Cześć.

To mój css:

#komputer:hover {
text-decoration: underline;
}	

Tak jak jest niżej, zmieniłbym rodzaj podkreślenia na automatyczny gdyby chodziło mi o zwykły element komputer. Chodzi mi jednak o najechany element komputer(hover). W jaki sposób zmienić tę wartość?

document.getElementById("komputer").style.text-decoration = "none";    

 

2 odpowiedzi

+1 głos
odpowiedź 22 kwietnia 2017 przez robkop Użytkownik (930 p.)
wybrane 22 kwietnia 2017 przez Mimoid
 
Najlepsza

Można to zrobić bez stylu w arkuszu, a za pomocą eventu. Nie wiem czy to ładny kod, ale działa.


document.getElementById("komputer").addEventListener("mouseover",function(){
  this.style.textDecoration = "underline";
})

document.getElementById("komputer").addEventListener("mouseout",function(){
  this.style.textDecoration = "none";
})

Edytowałem moją odpowiedź o drugiego eventa - z pierwszym underline zostawał na stałe po opuszczeniu tekstu.

 

 

 

komentarz 22 kwietnia 2017 przez Mimoid Użytkownik (760 p.)
Dzięki, działa.
+1 głos
odpowiedź 21 kwietnia 2017 przez Kornelia Kobiela Nałogowiec (33,340 p.)

Nie stylujemy po ID. To po pierwsze. Druga sprawa, to możesz sobie zrobić dodatkową klasę w css i nazwać ją jakkolwiek ci pasuje np. custom-underline (strzelam, bo nie wiem, co to dokładnie ma być) i robisz regułę dla klasy mniej więcej taką:

.custom-underline {
    text-decoration:underline;
}

Potem za pomocą js możesz nadawać tę klasę poszczególnym elementom za pomocą classList(link do dokumentacji). Tak chyba będzie najlepiej

komentarz 21 kwietnia 2017 przez Mimoid Użytkownik (760 p.)
Dzięki za odpowiedź, jednak twoje rozwiązanie raczej nie pomoże w tej sytuacji, albo nie rozumiem jak je zastosować.

Chodzi o to, że mam na stronie napis "Komputer" i po najechaniu na niego, pokazuje się pod nim podkreślenie. Po wciśnięciu tego napisu chciałbym, aby podkreślenie zniknęło, nie pojawiało się.

W jaki sposób mam użyć stworzonej przez Ciebie klasy, aby podkreślała napis po najechaniu?
2
komentarz 22 kwietnia 2017 przez dkarski Obywatel (1,610 p.)

Cześć Mimod, idąc tropem Kornelii potrzebujesz klasy, która będzie posiadała pseudoklasę typu hover, która jest odpowiedzialna za treść przy najechaniu.

.custom-underline:hover

Domyślnie możesz ją ustawić obok komputer

<div class="komputer custom-underline">komputer</div>

Ustawiasz event click za pomocą którego usuwasz klasę custom-underline

document.getElementsByClassName("komputer")[0].addEventListener("click",function(){
  this.classList.remove('custom-underline');
})

cały kod: https://codepen.io/anon/pen/YVWYRm

1
komentarz 22 kwietnia 2017 przez Kornelia Kobiela Nałogowiec (33,340 p.)
Właśnie o coś takiego mi chodziło.

Podobne pytania

0 głosów
1 odpowiedź 139 wizyt
0 głosów
1 odpowiedź 1,104 wizyt
pytanie zadane 4 sierpnia 2019 w HTML i CSS przez Grzegorz Mikina Dyskutant (8,060 p.)
0 głosów
0 odpowiedzi 1,269 wizyt
pytanie zadane 27 czerwca 2017 w JavaScript przez nitrio578 Początkujący (270 p.)

92,576 zapytań

141,425 odpowiedzi

319,650 komentarzy

61,961 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!

...