Frage:
Trotz Auslösen des „Mouseover“ -Ereignis bleibt die CSS-Deklaration „:hover“ inaktiv. Selbst der Versuch, die Klasse „hover“ mithilfe von theElement.classList.add(„hover“) manuell zum Element hinzuzufügen, hat keine Auswirkung. Ist es möglich, einen Mouseover in Chrome erfolgreich zu simulieren, indem man die CSS-Eigenschaft „:hover“ aktiviert?
Antwort:
Es ist nicht möglich, einen Mouseover auf eine solche Weise zu simulieren löst aus Sicherheitsgründen die CSS-Deklaration „:hover“ aus. Ereignisse, die durch Benutzerinteraktionen oder DOM-Änderungen ausgelöst werden, gelten als vertrauenswürdig, während von JavaScript erstellte Ereignisse als nicht vertrauenswürdig gelten.
Gemäß der W3C-Spezifikation sollten nicht vertrauenswürdige Ereignisse standardmäßig keine Browseraktionen auslösen, einschließlich der Aktivierung von CSS „:hover“. „Effekte. Um das Mouseover-Verhalten effektiv zu simulieren, müssen Sie bei den Ereignissen „mouseover“ bzw. „mouseout“ manuell eine benutzerdefinierte Klasse zum Element hinzufügen bzw. daraus entfernen. Diese benutzerdefinierte Klasse kann dann verwendet werden, um die gewünschten Stile über CSS anzuwenden und dabei den Effekt der „:hover“-Deklaration nachzuahmen.
Das obige ist der detaillierte Inhalt vonKann JavaScript Mouseover simulieren, um CSS :hover in Chrome zu aktivieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!