2017-09-16 9 views
6

मेरी HTML में यहाँOnclick दस्तावेज़ पर और कोई विशिष्ट तत्व चेतावनी

$(document).click(function(){ 
 
    alert('Document Clicked'); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
 
    <button type='button'>CLICK [NO ALERT]</button> 
 
    <button type='button'>ME[NO ALERT]</button> 
 
</body>

मेरी कोड यहाँ में, मैं कैसे दिख रहा है, तो मैं बटन पर क्लिक किया से चेतावनी रोकूँ, लेकिन बटन को छोड़कर कुछ भी सतर्क किया जा सकता है।

उत्तर

6

आप किसी विशिष्ट <button> पर एक और click श्रोता जोड़ सकते हैं और घटना के प्रसार को रोकने के कर सकते हैं:

$(document).click(function(){ 
 
    alert('Document Clicked'); 
 
}) 
 
$('.not-clickable').click(function(e) { 
 
    e.stopPropagation(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
 
    <button type='button'>CLICK [NO ALERT]</button> 
 
    <button type='button' class="not-clickable">ME[NO ALERT]</button> 
 
</body>

एक अन्य विकल्प अगर तत्व क्लिक किए गए वह यह है कि जाँच करने के लिए है विशिष्ट बटन:

$(document).click(function(e){ 
 
    if (e.target.classList.contains('not-clickable')) { 
 
    return; 
 
    } 
 
    alert('Document Clicked'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
 
    <button type='button'>CLICK [NO ALERT]</button> 
 
    <button type='button' class="not-clickable">ME[NO ALERT]</button> 
 
</body>

+0

मैं एक और उदाहरण जोड़ता हूं, मुझे उम्मीद है कि अगर आप इसे भी देख सकते हैं, क्योंकि यह केवल आपके द्वारा उपयोग किए जाने वाले दूसरे विकल्प का उपयोग करेगा, बस – AXAI

+0

अंतर को कैलिफ़ाई करने के लिए मैं वास्तव में आपके अपडेट को समझ नहीं पा रहा हूं। यदि आप केवल 'बटन' पर क्लिक को अलर्ट करना चाहते हैं तो बस पहले '$ (दस्तावेज़) को हटाएं। क्लिक करें ...' – Dekel

+0

मुझे कभी भी ध्यान न दें, आप सही हैं, बस महसूस किया कि यह सिर्फ एक और बार-बार जोड़ा गया था – AXAI

0

कोशिश यह

$("#SomeElementId").click(function(e) { 
 
    //do something 
 
    e.stopPropagation(); 
 
})

0

यह <button type='button' onclick="event.stopPropagation()">CLICK [NO ALERT]</button> की कोशिश करो। डिफ़ॉल्ट रूप से ईवेंट को मूल तत्व पर निकाल दिया जाता है, लेकिन event.stopPropagation(), इसे केवल ईवेंट की मूल उत्पत्ति रखता है।

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