答案 0 :(得分:3)
您可以使用start
和stop
选项:
$( ".selector" ).sortable({
start: function(event, ui) { ... },
stop: function(event, ui) { ... }
});
只需创建一个标志并在排序开始时设置为true,在排序结束时设置为false并在onclick函数中首先检查标志:
var isBeingSorted = false
$( ".selector" ).sortable({
start: function(event, ui) { isBeingSorted = true; },
stop: function(event, ui) { isBeingSorted = false; }
});
function printAlert(message){
if(!isBeingSorted)
alert(message);
}
当然,您的onclicks应该看起来像onclick="printAlert('sdfsdf')"
如需更多选项,请查看here
答案 1 :(得分:1)
如果您不希望使用@nigative的标志变量,可以使用start和stop方法执行以下操作:
$("#lop").sortable({
revert: '100',
placeholder: 'auo',
start: function(event, ui) {
ui.item[0].oldclick = ui.item[0].onclick;
ui.item[0].onclick = null;
},
stop: function(event, ui) {
ui.item[0].onclick = ui.item[0].oldclick;
}
});