Cara Mencegah Peristiwa onmouseout dalam Div Mutlak dengan Elemen Kanak-kanak
Apabila bekerja dengan div berkedudukan mutlak, acara onmouseout boleh dicetuskan lebih awal apabila tetikus memasuki elemen kanak-kanak. Ini boleh mengecewakan jika anda hanya mahu acara itu dicetuskan apabila tetikus meninggalkan div induk.
Penyelesaian Menggunakan onmouseleave
Untuk mengelakkan acara onmouseout daripada dicetuskan oleh elemen kanak-kanak, sebaliknya gunakan acara onmouseleave. Peristiwa ini direka khusus untuk menyala apabila tetikus meninggalkan elemen, walaupun pada masa ini ia menuding pada elemen kanak-kanak.
Untuk menggunakan onmouseleave, cuma tambahkan atribut berikut pada div induk:
onmouseleave="yourFunction()"
Contoh:
<div class="outer" onmouseleave="myFunction()"> <div class="inner"></div> </div>
Penyelesaian Menggunakan jQuery
Jika anda menggunakan jQuery, anda boleh menggunakan kaedah mouseleave() untuk mencapai hasil yang sama:
$(".outer").mouseleave(function() { // Your code here });
Dengan menggunakan onmouseleave atau mouseleave(), anda boleh menghalang acara onmouseout daripada menembak sehingga tetikus benar-benar keluar dari div induk, tidak kira sama ada ia melayang di atas mana-mana elemen kanak-kanak.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah Peristiwa onmouseout Pramatang dalam Div yang Diposisikan Benar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!