代码没有任何问题...只是它无效。您有一个错误关闭的标签,而代码中的其他奇怪之处一旦清理就解决了这个问题。我想。除非这不是你要问的。
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<ul id="k1" style="width:350px; height:350px; margin:20px;">
<li>One</li>
<li>Two</li>
<li>Three</li>
</ul>
<hr />
<ul style="width:350px; height:350px;">
<li class="gt">Four</li>
</ul>
</body>
</html>
CSS:
body {
font-size: 12px;
}
li{
border:1px solid #444444;
background-color:#AAAAAA;
padding:10px;
margin:10px;
}
jQuery:
$("#k1").sortable({ revert: '100' });
$('.gt').draggable({ connectToSortable: '#k1', revert: 'invalid', revertDuration: 100 });
编辑:抱歉,我看错了问题。代码有点混乱,我错过了这个问题。解决方案有点麻烦,但我认为它会起作用。
var original = $('#k1');
original.sortable({ revert: 100 });
$('.gt').draggable({
connectToSortable: original,
revert: 'valid',
revertDuration: 100,
stop: function(event, ui) {
original.sortable("option", "revert", 100);
}
});
基本上它会在删除.gt 后重新设置k1 div 上的revert 选项。