Jquery Sortable – 排序时禁用onclick =“”

是否可以在排序时禁用onclick =“”?

我在这里有一个工作的例子http://www.jsfiddle.net/V9Euk/59/

彼得

如果您不希望使用@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; } }); 

你可以使用startstop选项:

 $( ".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')"

有关更多选项,请查看此处