Soalan:
Walaupun mencetuskan "mouseover" acara, pengisytiharan CSS ":hover" kekal tidak aktif. Walaupun cuba menambah kelas "legar" secara manual pada elemen menggunakan Elemen.classList.add("legar") tidak mempunyai kesan. Adakah mungkin untuk mensimulasikan alih tetikus dengan jayanya dalam Chrome, mengaktifkan sifat CSS ":hover"?
Jawapan:
Tidak boleh mensimulasikan alih tetikus dengan cara yang mencetuskan pengisytiharan CSS ":hover" disebabkan oleh sekatan keselamatan. Peristiwa yang dicetuskan oleh interaksi pengguna atau perubahan DOM dianggap dipercayai, manakala peristiwa yang dibuat oleh JavaScript tidak dipercayai.
Menurut spesifikasi W3C, peristiwa yang tidak dipercayai tidak seharusnya mencetuskan tindakan penyemak imbas secara lalai, termasuk pengaktifan CSS ":hover "kesan. Untuk mensimulasikan tingkah laku alih tetikus dengan berkesan, anda mesti menambah dan mengalih keluar kelas tersuai secara manual daripada elemen pada acara "mouseover" dan "mouseout". Kelas tersuai ini kemudiannya boleh digunakan untuk menggunakan gaya yang diingini melalui CSS, meniru kesan perisytiharan ":hover".
Atas ialah kandungan terperinci Bolehkah JavaScript Mensimulasikan Mouseover untuk Mengaktifkan CSS :hover dalam Chrome?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!