Heim >Web-Frontend >CSS-Tutorial >Kann JavaScript CSS-:Hover-Effekte zuverlässig simulieren?
Mouseover in JavaScript simulieren: Herausforderungen mit CSS :hover
Versuch, ein Mouseover-Ereignis in JavaScript zu simulieren, um das CSS „:hover“ zu aktivieren Immobilien können eine Herausforderung darstellen, wie das Folgende zeigt Abfrage:
Frage:
Ich habe versucht, ein Mouseover-Ereignis mithilfe eines Mouseover-Listeners in Chrome zu simulieren. Während der Listener ausgelöst wird, bleibt die :hover-Deklaration bestehen inaktiv. Ich habe versucht, manuell eine „Hover“-Klasse hinzuzufügen, aber das Erscheinungsbild des Elements konnte nicht geändert werden das?
Antwort:
Diese Methode ist leider nicht möglich. Mouseover ist kein vertrauenswürdiges Ereignis.
Vom Benutzeragenten generierte Ereignisse (entweder als Ergebnis einer Benutzerinteraktion oder als direkte Folge von DOM-Änderungen) sind Ereignisse, die von Skripten mit der Methode DocumentEvent.createEvent("Event") generiert werden, Ereignis Ein vertrauenswürdiges Ereignis das über Berechtigungen verfügt, die nicht für Ereignisse gewährt werden, die mit der Methode .initEvent() geändert wurden, oder für Ereignisse, die mit der Methode EventTarget.dispatchEvent() ausgelöst wurden. Das Attribut „isTrusted“ von vertrauenswürdigen Ereignissen hat den Wert „true“ und das Attribut „isTrusted“ von nicht vertrauenswürdigen Ereignissen hat den Wert „false“.
Die meisten nicht vertrauenswürdigen Ereignisse lösen keine Standardaktion aus, mit Ausnahme von Click- oder DOMActivate-Ereignissen.
Sie müssen also Klassen in Mouseover-/Mouseout-Ereignissen manuell hinzufügen und entfernen.
Das obige ist der detaillierte Inhalt vonKann JavaScript CSS-:Hover-Effekte zuverlässig simulieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!