2010-04-28 12 views
8

मेरा अनबिंड काम नहीं करता है।jQuery unbind ('होवर') काम नहीं करता

$("img.hoverable").hover(ChangeImage, ChangeBack); 
$("a img.hoverable").unbind('hover'); 

एचटीएमएल इस

<img class="hoverable" src="something.jpg"/> 
<a href="#"><img class="hoverable" src="something.jpg"/></a> 

की तरह हो सकता है जब मैं दूसरे एचटीएमएल पर होवर करें, ChangeImage अभी भी निकाल दिया गया है।

मुझे यकीन नहीं है कि मैं इसे सही तरीके से उपयोग कर रहा हूं, क्या कोई सलाह दे सकता है?

उत्तर

15

$("img.hoverable").unbind('mouseenter mouseleave'); 

.hover() विधि दोनों mouseenter और mouseleave घटनाओं के लिए संचालकों बांधता है की कोशिश करो। तो अनबाइंड करने के लिए आपको माउसेंटर और माउसलेव को अनबाइंड करना होगा।

+0

ग्रेट। धन्यवाद, @rahul। –

+0

यह कोशिश करते समय यह काम नहीं करता है –

0

इस प्रयास करें:

$("img.hoverable").hover(ChangeImage, ChangeBack); 
$("img.hoverable").unbind('hover'); 
5

hovermouseenter और mouseleave के लिए एक छद्म घटना है। तो आपको इन्हें अनइंड करना होगा।
या यदि कोई अन्य हैंडलर संलग्न नहीं है, तो पैरामीटर के बिना .unbind() पर कॉल करें (किसी भी हैंडलर को हटा दें)।

$("a img.hoverable").unbind(); 
0

। होवर माउसेंटर और माउसलेव के लिए एक रैपर है।

उन पर असहमति कॉल करने का प्रयास करें।