简体   繁体   中英

How to prevent onclick event on a div while clicking on body click?

I would like to do functionality for body,html elements while clicking on anywhere on document and also there is a div tag which is onclick event will be there. Both are clashing each other how to prevent while clicking on that div. Tried both event stop propagation and event prevent defaul for example: jd is nothing but jquery

$jd =  jQuery 

The below event should only triggered particular div. but t his event clashing with body onclick.

$jd('.menu-left a').click(function(){
            $jd('.menu-left a').removeClass('active');          
            if($jd(this).hasClass('add_item_team')) self.team.create();
            if($jd(this).hasClass('add_item_qrcode')) self.qrcode.open();
            $jd(this).addClass('active');
            jQuery("#text-lock").trigger("click");
        });

jQuery(document).on('click','body',function(event){
/*console.log("adsfasddfs");   

    var finding_span;
    finding_span = $jd(".design-area").find('.content-inner span.drag-item');

     if(event.target.id == "dg-left"){
     return false;
     }else{
        if(finding_span.length>0){

        console.log("cameeeee");
        design.item.unselect();

        }
     }*/
     var finding_span;
    finding_span = $jd(".design-area").find('.content-inner span.drag-item');

     if(finding_span.length>0){
        design.item.unselect();
    }
jQuery(document).on('click','body',function(event){
    event.preventDefault();
    event.stopPropagation();
     var finding_span;
    finding_span = $jd(".design-area").find('.content-inner span.drag-item');

     if(finding_span.length>0){
        design.item.unselect();
    }

Hope this may help you

Try the following

   $jd(function(){
       event.preventDefault();
       event.stopPropagation();
       $jd('.menu-left a').click(function(){
       $jd('.menu-left a').removeClass('active');          
        if($jd(this).hasClass('add_item_team')) self.team.create();
        if($jd(this).hasClass('add_item_qrcode')) self.qrcode.open();
        $jd(this).addClass('active');
        jQuery("#text-lock").trigger("click");
     });
   });
jQuery(document).on('click','html,body,#main',function(event){
 event.preventDefault();
    event.stopPropagation();


    if(event.target.id=="text-lock"){
        return false;

    }

     var finding_span;
    finding_span = $jd(".design-area").find('.content-inner span.drag-item');

     if(finding_span.length>0){
        design.item.unselect();

        jQuery(".add_item_text").css({'background-color':'#f6f6f6','color':'#333'});
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM