1
後立即禁用拖動500ms所以,當我重新排列列表時,只要我放棄該項目,它就會將位置提交給我的後端代碼,並在後端重新排列列表。然而,我遇到了這樣的情況:如果我重新排序真的很快,一段時間後前端和後端的列表不再同步。所以我想在我放下片刻以避免競爭狀態後立即禁用拖動。我想在刪除
function reorder(panelId, type){
$(escapeClientId(panelId)).sortable({
start: function(event, ui){
ui.item.startPos = ui.item.index();
},
stop: function(event, ui){
//submit my start and end position to the server
//change the cursor to wait
$('body').css('cursor', 'wait');
window.setTimeout(wait,600);
}
});
$(escapeClientId(panelId)).disableSelection();
}
function wait(){
$('body').css('cursor', 'default');
}
正如你所看到的,我將光標移到wait
光標600毫秒,但是即使光標處於等待模式,它仍然允許用戶拖動重新排序。在我放下之後,有沒有辦法在短時間內完全禁用拖拽?
謝謝,其實我也有類似的做法,但一個小問題是,如果以後我放棄,我又重新排序的真快,我的光標從不回到默認狀態,它保持「等待」。你能幫我解決這個問題嗎? –
@ThangPham我已經更新了答案。這對你更好嗎? –
非常感謝您的幫助,但它仍然無效。我仍然遇到同樣的問題。 –