index.php中 var autoSave = false; 控制不自动提交。 index.php 代码如下: require 'db.php'; $query = "SELECT `id`,`order`,`name` FROM `limove` ORDER BY `order`"; $lis = mysql_query($query,$conn); $li_count = mysql_num_rows($lis); ?>
li Move
script>
Reset Save
while($li = mysql_fetch_assoc($lis)){ echo '
'.$li['name'].'
'; } ?>
$(document).ready(function(){ $("ul").css({height:}); var on_move_li = ''; var on_move_li_offset = ''; var on_move_li_index = ''; var autoSave = false; function bindMoveListening(){ $("li").mousedown(function(){ on_move_li_offset = $(this).offset(); on_move_li = $(this); on_move_li_index = on_move_li.prevAll().length; if(on_move_li_index == 0) var index = 1; else var index = on_move_li_index; //创建空li $("ul").children("li").eq(index-1).after('
') on_move_li.addClass('moving').css({left:on_move_li_offset.left,top:on_move_li_offset.top,position:'absolute','z-index':3,border:'1px dashed #AABBCC'}); $("ul").mousemove(function(e){ if($(this).find(".moving").length != 0) { var clientX = e.clientX-60; var clientY = e.clientY-20; on_move_li.css({left:clientX,top:clientY}); } }); $("ul").mouseup(function(e){ if($(this).find(".moving").length != 0) { var clientX = e.clientX; var clientY = e.clientY; var times = Math.floor((clientY-(on_move_li_offset.top+10))/42); var index = (times*5)+(Math.floor((clientX-(on_move_li_offset.left+50))/120)+on_move_li_index); if(index > ) index = ; on_move_li.attr('class',null).attr('style',null); $(".dashed").remove(); var fromid = on_move_li.attr('id'); var fromorder = on_move_li.attr('order'); var toorder = $("ul").children("li").eq(index).attr('order'); if(index == on_move_li_index && index>0) index = index-1; if(on_move_li_index == 0 && (index == -1||index == 0) ) $("ul").children("li").eq(1).before(on_move_li); else if(index == -1) $("ul").children("li").eq(0).before(on_move_li); else $("ul").children("li").eq(index).after(on_move_li); if(autoSave){ $.ajax({ url:'limove_process.php', type:'POST', data:{'fromid':fromid,'fromorder':fromorder,'toorder':toorder}, success:function(newdata){ $("ul").empty().append(newdata); bindMoveListening(); } }); } } }); }); $("#reset").click(function(){ $.ajax({ url:'limove_reset.php', type:'POST', success:function(newdata){ $("ul").empty().append(newdata); bindMoveListening(); } }); }); $("#save").click(function(){ var data = ''; var lis = $("ul").children("li"); $.each(lis,function(i){ data += lis.eq(i).attr('id')+','; }); $.ajax({ url:'limove_save.php', type:'POST', data:{'data':data.substr(0,data.length-1)}, success:function(newdata){ $("ul").empty().append(newdata); bindMoveListening(); } }); }); } bindMoveListening(); }); script>