एचटीएमएलdiv पर एक ऑनक्लिक कॉलबैक कैसे संलग्न करें लेकिन div के अंदर किसी लिंक पर नहीं?
<div class='item_container'>
[...bunch of links and pictures...]
<a class='item_owner'>John Doe</a>
</div>
जावास्क्रिप्ट
/**
Bind the onclick only if you hover on the item since we got a lot
of items and several events and plugins to setup on them.
*/
$('.item_container').live('mouseenter', function(e){
$this = $(this);
if (!$this.data('isSetup')) {
$this.click(function(e){
// do magic
return false;
});
[... a lot of other stuff]
$this.data({'isSetup': true});
}
});
बेशक
जब मैं div में कहीं भी क्लिक करें, यह 'जादू' प्रदर्शन करती है। return false
पर धन्यवाद, अगर मैं div में किसी भी लिंक पर क्लिक करता हूं, तो यह अभी भी 'जादू करें' करता है और पृष्ठ को नहीं बदलता है, जो अपेक्षित व्यवहार है।
लेकिन एक लिंक है जो वास्तव में पृष्ठ को बदलने के लिए लगता है, मालिक लिंक। परेशानी है, मेरे वर्तमान सेट अप के साथ, मैं इसे काम करने से रोकता हूं।
यह भी ऐसा ही करता है आप का उपयोग करता है, तो 'e.preventDefault()'? – ianbarker
तत्व के प्रकार को क्लिक करें ... this.tagName। यदि कोई लिंक है तो झूठी वापसी न करें ... – 2GDev
@ 2GDev: इसे एक उत्तर दें। यदि यह काम करता है, तो आपको प्रतिनिधि –