2017-07-25 16 views
0

私はbody、html要素の機能を文書のどこかをクリックしながら行いたいと思いますし、onclickイベントであるdivタグもあります。どちらも、そのdivをクリックしている間、どのようにして防ぐのかが互いに衝突しています。例えばdefaul を防ぐイベント停止伝播とイベントの両方を試してみました: JDは、以下のイベントjqueryのが、何もbodyクリックをクリックしてdivでonclickイベントを防ぐ方法は?

$jd = jQuery 

されていないだけで、特定のdivをトリガしなければなりません。しかし彼の出来事は体のonclickと衝突した。これはあなたに

+0

あなたはdiv要素ではなく、本体をクリックしたいですか?あなたの質問は不明です –

+0

イベントのバブリングを防ぐためにevent.preventdefault()とstoppropagation()を使用してください。もっと理解のためにインターネット上のpreventdefaultを確認してください。 –

+0

上記のコードで$ jdとは何ですか? –

答えて

1
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(); 
    } 

希望は試してみてください、次の

$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"); 
    }); 
    }); 
0

を助けるかもしれない

$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(); 
    } 
0
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'}); 
    } 
関連する問題