मेरे पास एक "बटन" में एक एंकर टैग <a class="next">next</a>
है। कभी-कभी, अगर टैग दिखाने के लिए कुछ नया नहीं है तो इस टैग को छिपाने की जरूरत है। अगर मैं बस .hide() के साथ बटन छुपाता हूं और इसे .show() के साथ फिर से प्रदर्शित करता हूं तो सभी ठीक काम करते हैं। लेकिन मैं इसके बजाय .fadeIn() और .fadeOut() का उपयोग करना चाहता था।अनबाइंड ('क्लिक') के बाद क्लिक ईवेंट को "रिबाइंड" कैसे करें?
मेरी समस्या यह है कि यदि उपयोगकर्ता fadeOut एनीमेशन के दौरान बटन पर क्लिक करता है, तो यह उस तर्क के साथ समस्याएं पैदा कर सकता है जो मैंने शो चलाया है। मूल क्लिक फ़ंक्शन शुरू होने के बाद मुझे मिला गया समाधान बटन से क्लिक ईवेंट को अनबिंड करना था, और फिर एनीमेशन पूर्ण होने के बाद इसे फिर से बांधना था।
$('a.next').click(function() {
$(this).unbind('click');
...
// calls some functions, one of which fades out the a.next if needed
...
$(this).bind('click');
}
उपरोक्त उदाहरण का अंतिम भाग काम नहीं करता है। क्लिक इवेंट वास्तव में एंकर से फिर से बाध्य नहीं है। क्या किसी को इसे पूरा करने का सही तरीका पता है?
मैं एक आत्म-सिखाया गया jquery लड़का हूं, इसलिए कुछ उच्च स्तर की चीजें जैसे unbind() और bind() मेरे सिर पर हैं, और jquery दस्तावेज मेरे लिए समझने के लिए वास्तव में काफी आसान नहीं है।
धन्यवाद निक, यह पूरी तरह से काम करता है। लेकिन मैं अभी भी उत्सुक हूं कि अगर कोई जानता है तो मैं क्लिक ईवेंट को "रिबाइंड" कैसे करूं। – Ben