Często chcę sprawdzić element (np. Podpowiedź), który pojawia się tylko wtedy, gdy inny element jest najeżdżany / wprowadzany myszą. Element, który się pojawia, staje się widoczny za pośrednictwem zdarzenia mouseenter jQuery.
Nie mogę sprawdzić podpowiedzi, ponieważ znika ona, gdy moja mysz opuszcza zawierający element.
Czy istnieje sposób na wstrzymanie zdarzeń JS, aby móc najechać kursorem na element, a następnie wstrzymać JS przeglądarki i pomyślnie go sprawdzić?
Na przykład spróbuj przejrzeć podpowiedzi z bootstrapem Twittera: http://getbootstrap.com/javascript/#tooltips .
:hover
na nim kliknięcie prawym przyciskiem myszy na element w widoku Elementy (DOM) w Narzędziach deweloperskich, wybierając „Wymuś stan elementu”, a następnie „: hover”.Odpowiedzi:
W Chrome 38.0.2094.0 jest to dość łatwe.
Oto jak to będzie wyglądać:
Krok po kroku:
Jeśli podpowiedź pojawia się z powodu CSS, oto co możesz zrobić w takim przypadku:
Krok po kroku:
źródło
byzanz-record
. To pakiet, z którym możesz dostaćsudo apt-get install byzanz
.Zarówno Safari i Chrome Web Inspector pola wyboru oferty, gdzie można przełączać
:active
,:focus
,:hover
i:visited
stan elementu. Korzystanie z nich może być jeszcze łatwiejsze.Safari:
Chrom:
źródło
:hover
style.:visited
, który jest ograniczony, aby zapobiec podsłuchiwaniu) - na karcie HTML znajduje się w menu rozwijanym „Styl” po prawej stronie:hover
,:active
lub:focus
.Jest też inny trudny sposób:
Twoja podpowiedź pozostanie widoczna, będziesz mógł ją wtedy obejrzeć na karcie Element.
Przetestowano w Chrome. Wygląda na to, że nie działa w przeglądarce Firefox.
źródło
Chociaż odpowiedź @ SomeGuy jest doskonała (t-up dla animowanych gifów), jako alternatywa zawsze możesz to zrobić programowo. Po prostu otwórz konsolę i wpisz nazwę wydarzenia
(z czystą składnią specyficzną dla javascript może się różnić w zależności od przeglądarki)
Jeszcze łatwiej z jQuery:
W swoim przykładzie ( http://getbootstrap.com/javascript/#tooltips ) otwórz konsolę i wpisz, na przykład:
Podpowiedź pojawia się w DOM i można ją ręcznie sprawdzić / zmodyfikować:
Podobnie jak w komentarzach, jeśli przesuniesz wskaźnik myszy nad ramkę strony, możesz wywołać inne zdarzenia, takie jak
mouseout
. Aby temu zapobiec, możesz nacisnąć F8(jak w odpowiedzi na konto) lub wpisaćdebugger;
(co jest jego odpowiednikiem w skrypcie)źródło
mouseout
), więc w pierwszej kolejności nie rozwiązuje to problemu. Musisz być bardzo ostrożny przy jego wyborze. Ale jest to podejście alternatywne.