mlwArea
<!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>无标题文档</title>
<style type="text/css">
.drag
         {
             border: 2px solid #000;
             width: 100px;
             height: 100px;
             cursor: move;
             position: absolute;
             left: 0;
             top: 0;
         }
</style>
<script src="jquery.min.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(function() {
            var _move = false; //移动标记
            var _x, _y; //鼠标离控件左上角的相对位置
            $(".drag").mousedown(function(e) {
                 _move = true;
                 _x = e.pageX - parseInt($(".drag").css("left"));//鼠标在内部位置
                 _y = e.pageY - parseInt($(".drag").css("top"));
                 $(".drag").fadeTo(20, 0.5); //点击后开始拖动并透明显示
                 console.log(\'old:\'+_x,_y);
            });
             $(document).mousemove(function(e) {
                 if (_move) {
                     var x = e.pageX - _x; //移动时根据鼠标位置计算控件左上角的绝对位置
                    var y = e.pageY - _y;
                     $(".drag").css({ top: y, left: x }); //控件新位置
                     console.log(\'new:\'+x,y);
                }
             }).mouseup(function() {
                 _move = false;
                 $(".drag").fadeTo("fast", 1); //松开鼠标后停止移动并恢复成不透明
            });
         });</script>
</head>
<body>
<form id="form1" runat="server">
     <div class="drag">div拖拽</div>
</form>
    </body>
</html>

 

// 栏目拖动实现
            var _move = false;
            var _y,_this,move_block;
            $(\'#phone_index-column tr .icon-move\').on(\'mousedown\',function(e){//点击开始
                _this = $(this).parents(\'.firsttab\');
                pos = _this.offset();
                // 添加移动块且记录位置
                _this.after(\'<tr class="move_block"></tr>\');
                move_block = _this.next(\'.move_block\');
                $(\'.move_block\').css({\'height\':_this.height(),\'background\':\'#AED8DD\',\'border\':\'1px dashed #000\'});
                _this.addClass(\'feild_move\');
                $(\'.feild_move\').css({\'display\':\'block\',\'position\':\'absolute\',\'width\':_this.width(),\'top\':pos.top-140,\'border\':\'1px solid #639cfb\',\'box-shadow\': \'0 0 5px #639cfb\'});
                _move = true;
                _y = e.pageY - parseInt($(\'.feild_move\').css("top"));//鼠标在内部位置
                $(\'.feild_move\').fadeTo(400, 0.5); //点击后开始拖动并透明显示
            }).on(\'mousemove\',function(e) {//移动过程
                var e=event || window.event;
                if (_move) {
                    var y = e.pageY - _y;//移动时根据鼠标位置计算控件左上角的绝对位置
                    var next_top = move_block.next().length===0?\'\':(move_block.next().offset().top - 148);
                    var prev_top = move_block.prev().length===0?\'\':(move_block.prev().prev().offset().top - 148);
                    if(y > next_top){//下移
                        if(move_block.next() != null){
                            move_block.next().after(move_block);
                        }
                    }
                    if(y < prev_top){//上移
                        if(move_block.prev().data(\'aid\') ==_this.data(\'aid\')){
                            move_block.prev().prev().before(move_block);
                        }
                        else{
                            move_block.prev().before(move_block);
                        }
                    }
                    $(\'.feild_move\').css({ \'top\': y }); //控件新位置
                }
             }).on(\'mouseup\',function() {//松开鼠标后
                _move = false;
                $(\'.firsttab\').fadeTo(400, 1);
                _this.removeClass(\'feild_move\');
                var move_prev = move_block.prev();
                move_prev.after(_this);
                _this.css({\'display\':\'\',\'position\':\'\',\'width\':\'\',\'top\':\'\',\'border\':\'\',\'box-shadow\': \'\'});
                $(\'.move_block\').remove();
                // 获取排序信息
                var indexs;
                indexs = $(\'.phone_func .firsttab\').map(function(){
                    return {id:$(this).data(\'aid\'), index:$(this).index()};
                }).toArray();
                $http.post(\'../mhomepage-sortmodify\', {indexlist:indexs}).success(function(json) {
                    // checkJSON(json, function(json){
                   
                    // });
                });
            });//拖动结束

 

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2022-01-01
  • 2022-01-01
  • 2022-01-01
  • 2021-07-29
  • 2021-09-18
  • 2021-06-10
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-01-01
  • 2022-01-01
  • 2022-01-01
  • 2022-01-01
  • 2021-06-15
  • 2021-06-12
相关资源
相似解决方案