मुझे एक विशेष कक्षा के एक div को सौंपा गया एक क्लिक ईवेंट मिला है। जब क्लिक होता है, कक्षा को div से हटा दिया जाता है। हालांकि, आप अभी भी div पर क्लिक कर सकते हैं और click()
ईवेंट ट्रिगर किया गया है (भले ही कक्षा को हटा दिया गया हो)।jQuery क्लिक() अभी भी ट्रिगर किया जा रहा है। क्लिक करने योग्य वर्ग हटा दिया गया है
एचटीएमएल:
<div class="clickable">
<p>Click me</p>
</div>
जावास्क्रिप्ट/jQuery:
$('.clickable').click(function() {
$(this).removeClass('clickable');
$(this).addClass('not-clickable');
alert('Clicked!');
});
मैं वर्गों निकाल दिए जाते हैं और कहा कि (पाठ का रंग के रूप में देख सकते हैं के रूप में बदल दिया है यहाँ एक उदाहरण है मेरे सीएसएस प्रति)। हालांकि, आप अभी भी कई बार div पर क्लिक करने में सक्षम हैं और alert()
अभी भी दिखाई देंगे।
यह भी विपरीत में प्रतीत होता है; इसलिए यदि मैं clickable
कक्षा को div में जोड़ता हूं, तो $('.clickable').click(function() {...});
में कोड नहीं चलाया जाता है (लेकिन दृश्यमान रूप से, नई शैलियों के अनुसार div परिवर्तन)।
मैं इसे कैसे बना सकता हूं ताकि क्लिक ईवेंट घटनाओं से मेल खा सकें, jQuery के बाद भी clickable
कक्षा को जोड़ता/हटा देता है?
स्पष्टीकरण के लिए धन्यवाद - मैं देख सकता हूं कि अब क्या होता है। –
आपको बहुत धन्यवाद, यह स्पष्टीकरण मेरे लिए काम करता है। स्पष्टीकरण के लिए – Drew
+1 :) – Yasser