如何 在 js 中实现   拖动层 的效果
就是 鼠标 单击 层 并拖动    div 跟这移动的

解决方案 »

  1.   

    给你一个jquery拖拽的代码,记得加入jquery库,什么版本的都可以,代码是自己写的,原理不懂的话可以直接问:<script src="jquery.js" type="text/javascript"></script>
     <script 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);//点击后开始拖动并透明显示
                });
        $(document).mousemove(function(e){
            if(_move){
            var x=e.pageX-_x;//移动时根据鼠标位置计算控件左上角的绝对位置
            var y=e.pageY-_y;
            $("#drag").css({top:y,left:x});//控件新位置
                }
             }).mouseup(function(){
             _move=false;
           $("#drag").fadeTo("fast", 1);//松开鼠标后停止移动并恢复成不透明
    });        });
    </script>
    <div class=".drag" id="drag" style="position:absolute;top:200px;left:200px;background:red;z-index:1000;width:200px;height:100px;">left</div>