Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][CSS]Hover na ekranie dotykowym
Forum PHP.pl > Forum > Przedszkole
mati251195
Witam,

Robię stronę internetową i chciałbym dostosować ją także pod urządzenia mobilne. Mam problem z pseudoklasą :hover. Po nadjechaniu na kategorię w menu rozwija się podmenu tejżę kategorii. Na komputerze i telefonie nie ma problemu z wysuwaniem się ukrytych opcji nawigacji, ale na komputerze, gdy zjadę myszą z danego elementu to :hover przestaje działać. Na telefonie muszę kliknąć gdzieś poza. Można to przeżyć, ale chciałbym to ulepszyć. Mianowicie, użytkowni klika na kategorię menu, zyskuje ona pseudoklasę :hover i pojawia się podmenu. Użytkownik klika drugi raz na tą kategorię i wtedy :hover znika, czyli można zwinąć pod menu klikając na daną kategorię, a nie tylko gdzieś poza. Tylko jak to zrobić?

Z góry dziękuję za pomoc smile.gif
kamil4u
Wykryć czy masz do czynienia z telefon, jeśli to podpinasz dodatkowy skrypt JS, który, właściwie który robi co chcesz w zależności jak to napiszesz.
mati251195
Ale wiesz, że kompletnie mi nie pomogłeś? Liczyłem ja jakieś kontruktywne porady, a nie napisanie tego, co jest oczywistą oczywistością.

Poradziłem sobie już sam, usunąłem efekty dla pseudoklasy :hover i zamiast tego, np. efekt rozwijania dodałem dla li.hover > ul (tylko dla urządzeń mobilnych) i dodałem taki kod JS:
  1. $(document).ready(function() {
  2. $('#nawigacja .menu > li').click(function () {
  3. $(this).siblings().removeClass('hover');
  4. $(this).toggleClass('hover');
  5. });
  6. });

Wszystko teraz działa pięknie biggrin.gif
kamil4u
Nie podałeś kodu, nie napisałeś z czym masz konkretnie problem, więc napisałem ogólnie
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.