Rumah > hujung hadapan web > tutorial js > ## Mouseover lwn Mouseenter: Bilakah Anda Harus Menggunakan Setiap Acara?

## Mouseover lwn Mouseenter: Bilakah Anda Harus Menggunakan Setiap Acara?

Mary-Kate Olsen
Lepaskan: 2024-10-25 08:29:28
asal
453 orang telah melayarinya

## Mouseover vs. Mouseenter: When Should You Use Each Event?

Memahami Perbezaan antara Peristiwa Tetikus dan Mouseenter

Dalam pembangunan web, acara tuding tetikus dan tetikus selalunya digunakan untuk fungsi berkaitan tuding. Walaupun mereka kelihatan berkelakuan serupa, terdapat perbezaan yang ketara antara keduanya.

Penyebaran Peristiwa

Perbezaan utama antara acara alih tetikus dan masuk tetikus terletak pada penyebaran acara mereka . Tetikus ialah peristiwa menggelegak yang menyebarkan hierarki DOM, manakala mouseenter ialah peristiwa tidak menggelegak yang hanya berlaku pada elemen yang disasarkan.

Ini bermakna peristiwa alih tetikus boleh dicetuskan apabila kursor tetikus memasuki mana-mana elemen dalam bekas, manakala acara tetikus hanya berlaku apabila kursor memasuki elemen sasaran itu sendiri.

Demo Interaktif

Untuk menggambarkan konsep ini, rujuk demonstrasi jQuery berikut:



var i = 0;<br>$("div.overout ")<br> .mouseover(function() {</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">i += 1;
$(this).find("span").text("mouse over x " + i);
Salin selepas log masuk

})
.mouseout(function() {

$(this).find("span").text("mouse out ");
Salin selepas log masuk

});

var n = 0;
$("div.enterleave")
.mouseenter(function() {

n += 1;
$(this).find("span").text("mouse enter x " + n);
Salin selepas log masuk

})
.mouseenter(function() {

$(this).find("span").text("mouse leave");
Salin selepas log masuk

});

div.out {<br> lebar: 40%; <br> tinggi: 120px;<br> jidar: 0 15px;<br> warna latar belakang: #d6edfc;<br> apungan: kiri;<br>}</p>
<p>div.in {<br> lebar : 60%;<br> ketinggian: 60%;<br> warna latar belakang: #fc0;<br> jidar: auto 10px;<br>}</p>
<p>p {<br> ketinggian garis: 1em ;<br> jidar: 0;<br> pelapik: 0;<br>}

<skrip src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script></p>
<p><div class="out overout "><br> <span>gerakkan tetikus anda</span><br> <div class="in"><br> </div><br></div></p>
<p><div class="out enterleave"><br> <span>gerakkan tetikus anda</span><br> <div class="in"><br> </div><br></div>

Dalam demo ini, acara alih tetikus dilampirkan pada elemen "overout" dan acara tetikus masuk dilampirkan pada elemen "enterleave". Semasa anda menggerakkan tetikus anda ke atas bekas "terlebih", bilangan peristiwa alih tetikus bertambah walaupun apabila bergerak ke atas elemen "masuk" dalam. Sebaliknya, bekas "enterleave" hanya menambah kiraan acara tetikus apabila tetikus memasuki bekas itu sendiri.

Bila Menggunakan Setiap Acara

Berdasarkan acara tersendiri mereka tingkah laku penyebaran, adalah disyorkan untuk menggunakan acara alih tetikus apabila anda perlu mengendalikan hoover pada mana-mana elemen dalam bekas, tidak kira sama ada kursor tetikus memasuki bekas itu sendiri. Sebaliknya, gunakan acara mouseenter apabila anda secara khusus ingin mengendalikan hoovering hanya pada elemen sasaran yang ditetapkan.

Atas ialah kandungan terperinci ## Mouseover lwn Mouseenter: Bilakah Anda Harus Menggunakan Setiap Acara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan