आप निम्न उदाहरण को jQuery के डॉक्टर पृष्ठ से आज़मा सकते हैं । यह एक अच्छा सा, इंटरैक्टिव डेमो है जो इसे बहुत स्पष्ट बनाता है और आप वास्तव में अपने लिए देख सकते हैं।
var i = 0;
$("div.overout")
.mouseover(function() {
i += 1;
$(this).find("span").text("mouse over x " + i);
})
.mouseout(function() {
$(this).find("span").text("mouse out ");
});
var n = 0;
$("div.enterleave")
.mouseenter(function() {
n += 1;
$(this).find("span").text("mouse enter x " + n);
})
.mouseleave(function() {
$(this).find("span").text("mouse leave");
});
div.out {
width: 40%;
height: 120px;
margin: 0 15px;
background-color: #d6edfc;
float: left;
}
div.in {
width: 60%;
height: 60%;
background-color: #fc0;
margin: 10px auto;
}
p {
line-height: 1em;
margin: 0;
padding: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="out overout">
<span>move your mouse</span>
<div class="in">
</div>
</div>
<div class="out enterleave">
<span>move your mouse</span>
<div class="in">
</div>
</div>
संक्षेप में, आप देखेंगे कि जब आप अपने बच्चे या माता-पिता के तत्व से आ रहे होते हैं, तो एक माउस ओवर ईवेंट एक तत्व पर होता है - लेकिन एक माउस एंटर ईवेंट तभी होता है जब माउस इस तत्व के बाहर से इस तत्व की ओर बढ़ता है।
या जैसे mouseover()
डॉक्स इसे डालते हैं:
[ .mouseover()
] घटना बुदबुदाहट के कारण कई सिरदर्द हो सकते हैं। उदाहरण के लिए, जब माउस पॉइंटर इस उदाहरण में इनर एलिमेंट पर चलता है, तो माउसओवर ईवेंट उस पर भेजा जाएगा, फिर आउटर तक ट्रिकल करें। यह हमारे बाध्य माउसओवर हैंडलर को इनोपपोर्ट्यून समय पर ट्रिगर कर सकता है। .mouseenter()
एक उपयोगी विकल्प के लिए चर्चा देखें ।
mouseenter
"केवल तब होता है जब माउस मूल तत्व से तत्व तक जाता है"। घटना तब होती है जब माउस तत्व के बाहर होने से उसके अंदर बदल जाता है। इससे कोई फर्क नहीं पड़ता कि माउस किस तत्व से आया है। यह सच है कि माउस अक्सर माता-पिता से आएगा, लेकिन हमेशा नहीं। जैसे, यदि माता-पिता के पास कोई गद्दी या सीमा नहीं है, तो माउस सीधे दादा-दादी से प्रवेश कर सकता है, औरmouseenter
फिर भी आग लगाएगा। वास्तव में, यह व्यूपोर्ट के बाहर से तत्व में प्रवेश कर सकता है (यदि तत्व किनारे पर सही है) और घटना अभी भी आग है।