1

ドラッグ可能な要素がstopPropagationを割り当てた2つの要素を停止したときに、それを取得しようとしています。私がこれまでに持っているコードは、エラーはありませんが、まだ機能していません。

 $( "#pop_up" ).draggable({ 
        handle: "#pop_header",
        containment: "parent", 
        stop:function(e) {
             if ($(e.target).attr('id') === "submit") {
               e.stopPropagation();
                return false;
            } 
          else if ($(e.target).attr('id') === "close")
           {
          e.stopPropagation();
           return false;
          }
      }
 });

基本的な HTML モックアップ -

<div id="pop_up">
  <div id="pop_header">
    <span class="button" id="submit"></span>
    <span class="button" id="close"></span>
  </div>
     <div id="pop_body">

   </div>
</div>

これらの要素をクリック可能にする方法のアイデアは、今のところ jQuery に指示したようにクリック可能ではありません.-

$('.button #close').click(function() {
  $('#pop_up').hide();
 });
 $('.button #submit').click(function() {
      var miniVis = $('#minimize_wrapper').css('display');
  if(miniVis ==="block"){
       $('#minimize_wrapper').slideUp();
   } else {
      $('#minimize_wrapper').slideDown();
   }
  });
4

1 に答える 1

0

わかりましたので、私がしなければならなかったことは、ドラッグ可能の最初のコードをこれに変更することでした-

$( "#pop_up" ).draggable({ 
    handle: "#pop_header",
    containment: "parent", 
    stop:function(e) {
         if ($(e.target).attr('id') === "parent-of-buttons") {
           e.stopPropagation();
            return false;
        } 
    }
});

そして、2番目のコードをこれに変更しました-

$('#parent-of-buttons').on('click','#close',function(){
  $('#pop_up').hide();
 });
$('#parent-of-buttons').on('click','#submit',function(){
     var miniVis = $('#minimize_wrapper').css('display');
 if(miniVis ==="block"){
   $('#minimize_wrapper').slideUp();
  } else {
   $('#minimize_wrapper').slideDown();
  }
});

これが、これをやろうとしている他の人に役立つことを願っています。ボタン自体のプロパゲーションを停止することはできませんが、その親要素のプロパゲーションを停止することはできます。

于 2013-05-22T00:31:40.787 に答える