2012-12-23 22 views
0

雖然在IE瀏覽器,它在鉻的作品它不會:「快照」選項在拖動停止工作時按下「Ctrl」,我甚至不能似乎得到警報(「SNAP」)拖動。我的嘗試是:JQuery可拖動的快照取消與鍵

$("#object").draggable({ 
     handle: '#handle_', 
     containment: '#MainBody', 
     snap: ".drag_alignLines", // Setting snap to alignment lines 
     snapTolerance: 15 
          }).bind('keydown', function(event){ 
         alert("SNAP"); 
        if(event.ctrlKey) 
        { 
         alert("hi"); 
         this.draggable("option", "snap", false); 
        } 
       }); 

不能讓Chrome瀏覽器趕上Ctrl鍵的同時,甚至在IE中拖... : 「this.draggable( 」選項「, 」啪「,假);」只是不讓它停止捕捉的同時拖動......

回答

1

你想要做的是重新設置捕捉選項,如下所示:

$("#object").draggable("option", "snap", false); 

並記得設置回原始值經常點擊。這裏是this jsfiddle的相關章節:

$("#object").draggable({ 
containment: '#MainBody', 
snapTolerance: 15, 
start: function(event) 
    { 
     if(event.ctrlKey) 
     { 
      $(this).draggable("option", "snap", false); 
     }else { 
      $(this).draggable("option", "snap", '.drag_alignLines'); 
     } 

    }}); 

它結合到「開始」,而不是「的keydown」所以你沒有擊中控制之前的目標。

+0

不能正常工作.... – Mike