您的位置:首页 > 其它

div拖动

2016-03-15 15:22 288 查看
 Drag("back");

function Drag(id) {

    var $ = function (flag) {

        return document.getElementById(flag);

    }

    $(id).onmousedown = function (e) {

        var d = document;

        var  that=this;

        var page = {

            event: function (evt) {

                var ev = evt || window.event;

                return ev;

            },

            pageX: function (evt) {

                var e = this.event(evt);

                return e.pageX || (e.clientX + document.body.scrollLeft - document.body.clientLeft);

            },

            pageY: function (evt) {

                var e = this.event(evt);

                return e.pageY || (e.clientY + document.body.scrollTop - document.body.clientTop);

            },

            layerX: function (evt) {

                var e = this.event(evt);

                return e.layerX || e.offsetX;

            },

            layerY: function (evt) {

                var e = this.event(evt);

                return e.layerY || e.offsetY;

            }

        }            

        var x = page.layerX(e);

        var y = page.layerY(e);       

        if (that.setCapture) {

            that.setCapture();

        }

        else if (window.captureEvents) {

            window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);

        }

        d.onmousemove = function (e) { 

       

            var tx = page.pageX(e) - x;

            var ty = page.pageY(e) - y;

            that.style.left = tx + "px";

            that.style.top = ty + "px";

        }

        d.onmouseup = function () {

            if (that.releaseCapture) {

                that.releaseCapture();

            }

            else if (window.releaseEvents) {

                window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);

            }

            d.onmousemove = null;

            d.onmouseup = null;

       

        }

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: