2009-10-13 11 views
42

मैंने $.unbind('hover') की कोशिश की, जो काम नहीं कर रहा है।

+0

तुम क्या तत्व से घटना निकल करने के लिए निर्दिष्ट करते हैं: ऊपर के उदाहरण उपयोग निकल करने के लिए? उदाहरण के लिए $ ("ए")। unbind ("होवर") – Marius

+0

हां, यह $ ("# id") द्वारा जोड़ा गया है। होवर (...), और $ ("# id")। unbind ('hover') काम नहीं कर रहा। – Mask

+2

संभव डुप्लिकेट [मैं jQuery में "होवर" को कैसे रोक सकता हूं?] (Http://stackoverflow.com/questions/805133/how-do-i-unbind-hover-in-jquery) – madth3

उत्तर

74

hover समारोह यह सिर्फ एक short-handmouseenter और mouseleave घटनाओं के लिए दो संचालकों बाध्य करने के लिए है, तो आप उन्हें निकल जाना चाहिए:

$('#item').unbind('mouseenter mouseleave'); 
+4

आप उन कॉल को जोड़ सकते हैं: '.unbind ('माउसओवर माउसआउट');' – nickf

+0

धन्यवाद @nickf, आपकी सिफारिश जोड़ने के लिए संपादित किया गया। – CMS

+1

यह अभी भी – Mask

-2

आप भी आजमा सकते:

$('#item').bind('hover', function(){return false})

+6

किसी ऑब्जेक्ट को अतिरिक्त ईवेंट हैंडलर बाध्य करना पहले बाध्य हैंडलर को ओवरराइड नहीं करता है। यह अच्छी तरह से काम कर सकता है, क्योंकि 'वापसी झूठी' प्रचार को रोक सकता है, लेकिन यह एक अच्छा समाधान नहीं है। – nickf

2

tringger unbinding एक क्लिक के साथ

$('.item').click(function() { 
$('.item').unbind('mouseenter mouseleave'); 
}); 
11

Api documentation on hover:

उदाहरण:

$("td").off('mouseenter mouseleave'); 
+2

'ऑफ' और 'अनबिंड' में क्या अंतर है? – Ian

+4

जैसा कि [** unbind() **] (https://api.jquery.com/unbind/) में परिभाषित किया गया है: _ .ind() से जुड़े हैंडलर हैंडल को .unbind() से हटाया जा सकता है। (JQuery 1.7 के रूप में, .on() और .off() विधियों को तत्वों पर ईवेंट हैंडलर संलग्न करने और निकालने के लिए प्राथमिकता दी जाती है।) _ – diynevala

संबंधित मुद्दे