2016-06-13 57 views
0

有人可以解釋我這一開始:功能代碼?jquery的UI可拖動啓動功能代碼

$("#car, #boat, #soccer").draggable({ 
    start: function(event, ui) { 
     if (!done) 
      return false; 
    }, 
}); 
+1

_explain_什麼? – Satpal

+1

done是一個已定義的布爾值,如果已完成,那麼用戶可以拖動'#car,#boat,#soccer' –

+0

如果沒有完成?像沒有完成拖動?還是沒有完成刪除它? – Christine

回答

0

done是定義的變量(主要是布爾值),如果它等於true(而不是假),則用戶可以拖動#car#boat,和#soccer。這可以解釋它

$(function(){ 
 
    
 
    var done = false; 
 
    $('#tg-done').on('click', function(){ 
 
     ((done) ? done = false : done = true); 
 
     $('p').text('`done` = ' + done); 
 
    }); 
 
    
 
    $(".draggable").draggable({ 
 
     start: function(event, ui) { 
 
     if(!done) return false; 
 
     } 
 
    }); 
 

 
});
.draggable { 
 
    width:100px; 
 
    height:100px; 
 
    background:#333; 
 
    border-radius:4px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script> 
 
<button id="tg-done">Toggle `done`</button> 
 
<p>`done` = false</p> 
 

 

 
<div class="draggable"></div>

0

draggablestart功能允許您通過返回false取消阻力。
只有當done var爲true時,您纔可以在這裏拖動#car,#boat#soccer節點。

+0

如果(!done)意味着用戶仍然持有可拖動? – Christine

+0

沒有剩下的代碼我就說不出來了。 'done' var應該是之前設置的。 只有當用戶在節點開始移動之前開始拖動節點時,纔會調用「開始」功能。所以是的,用戶可以拖動,但如果「完成」,他會馬上釋放它。 –