可移动窗口


function dragfunction(el) {
    var offsetX = 0;
    var offsetY = 0;
    $(el).find(".dragHeader").on("mousedown", function (e) {
        offsetX = e.offsetX;
        offsetY = e.offsetY;
        document.onselectstart = function () { return false; };
        $(el).find(".dragHeader").on("mousemove", onmousemoveFC)
    })
    $(el).find(".dragHeader").on("mouseup", function (e) {
        $(el).find(".dragHeader").off("mousemove", onmousemoveFC)
        document.onselectstart = function () { return true; };
    })
    function onmousemoveFC(e) {
        $(el).css({ "left": e.pageX - offsetX, "margin-top": e.pageY - offsetY })
    }
}

 

//拖拽
MoveDop1(); //【一级弹窗拖拽】
MoveDop2(); //【二级弹窗拖拽】

//一级弹窗拖拽  所有包含 modalHeader 类的表头的弹窗都可拖拽
function MoveDop1() {
    var dom = $("body .modalHeader").parent();
    var flag = false; //判断是否含有二级弹窗阅片 
    var move = false;
    var _x, _y;
    $(document).on("mousedown", "body .modalHeader", function (e) {
        move = true;
        _x = e.pageX - parseInt($(this).parent().css("left"));
        _y = e.pageY - parseInt($(this).parent().css("top"));
        //赋值当前移动元素
        dom = $(this).parent();

        //if ($(this).parent().attr("id") == "yuepian") {
        //    flag = true;
        //} else {
        //    flag = false;
        //}
    });

    $(document).mousemove(function (e) {
        if (move) {
            var x = e.pageX - _x;
            //控件左上角到屏幕左上角的相对位置 
            var y = e.pageY - _y;
            if (flag) {
                $("#yuepian").css({ "top": y, "left": x });
            } else {
                dom.css({ "top": y, "left": x });
            }

            if (document.selection == null) {

            } else {
                document.selection.empty();
            }
        }
    }).mouseup(function () {
        move = false;
    });
}

//二级弹窗拖拽  -- 表头必须添加 noModalHeader 类
function MoveDop2() {
    var dom = $("body .noModalHeader").parent();
    var flag = false; //判断是否含有二级弹窗阅片
    var move = false;
    var _x, _y;
    $("body .noModalHeader").mousedown(function (e) {
        move = true;
        _x = e.pageX - parseInt($(this).parent().css("left"));
        _y = e.pageY - parseInt($(this).parent().css("top"));
        //赋值当前移动元素
        dom = $(this).parent();

        if ($(this).parent().attr("id") == "yuepian") {
            flag = true;
        } else {
            flag = false;
        }
    });
    $(document).mousemove(function (e) {
        if (move) {
            var x = e.pageX - _x;
            //控件左上角到屏幕左上角的相对位置 
            var y = e.pageY - _y;

            if (flag) {
                $("#yuepian").css({ "top": y, "left": x });
            } else {
                dom.css({ "top": y, "left": x });
            }
            if (document.selection == null) {

            } else {
                document.selection.empty();
            }

        }
    }).mouseup(function () {
        move = false;
    });
}

 

posted on 2022-08-16 21:21  马玉豪  阅读(29)  评论(0)    收藏  举报

导航