• 【原创】Jquery.Greybox.js(Jquery框架下的Greybox源代码)


    function GB_show(title, url, width, height, scroll) {
        var GB_HEIGHT = height || 400;
        var GB_WIDTH = width || 400;
        var scroll = scroll == null ? 'no' : scroll;
        var html = "\
                <div id='GB_overlay'><iframe id='GB_bgframe' scrolling='no' frameborder='0'></iframe></div>\
                <div id='GB_window'>\
                <div id='GB_caption'>" + title + "</div>\
                <img id='GB_closeimg' src='/images/greybox/close.gif' alt='Close window'/>\
                <img id='GB_loading' src='/Images/greybox/indicator.gif' align='absmiddle'/>\
                <iframe id='GB_frame' src='" + url + "' scrolling='" + scroll + "'></iframe>\
                </div>\
                ";
        $(document.body).append(html);
        $("html").css("overflow", "hidden");

        //position
        var GB_de = document.documentElement;
        var GB_w = Math.max(GB_de.offsetWidth, document.body.scrollWidth, GB_de.scrollWidth);
        var GB_h = Math.max(GB_de.offsetHeight, document.body.scrollHeight, GB_de.scrollHeight);
        var scrollleft = Math.max(GB_de.scrollLeft, document.body.scrollLeft);
        var scrolltop = Math.max(GB_de.scrollTop, document.body.scrollTop);
        var GB_left = ((GB_de.clientWidth - GB_WIDTH) / 2) + scrollleft;
        var GB_top = ((GB_de.clientHeight - GB_HEIGHT) / 2) + scrolltop;

        $("#GB_overlay").css({ GB_w + "px", height: GB_h + "px" });
        $("#GB_window").css({ GB_WIDTH + "px", height: GB_HEIGHT + "px", top: GB_top + "px", left: GB_left + "px" });
        $("#GB_frame").css({ height: GB_HEIGHT - 22 + "px" });

        //bind event
        $("#GB_window img").click(GB_hide);
        $("#GB_frame").load(function() { $("#GB_loading").hide(); $("#GB_frame").show(); });
        $("#GB_caption").mousedown(function(event) {
            var oObj = document.getElementById("GB_window");
            var oEvent = window.event || event;
            var dragData = { x: oEvent.clientX, y: oEvent.clientY };
            var backData = { x: parseInt(oObj.style.top), y: parseInt(oObj.style.left) };
            if ($.browser.msie) oObj.setCapture();
            oObj.onmousemove = function(event) {
                oEvent = window.event || event;
                var iLeft = oEvent.clientX - dragData["x"] + parseInt(oObj.style.left);
                var iTop = oEvent.clientY - dragData["y"] + parseInt(oObj.style.top);
                oObj.style.left = iLeft + "px";
                oObj.style.top = iTop + "px";
                dragData = { x: oEvent.clientX, y: oEvent.clientY };
            }
            oObj.onmouseup = function(event) {
                oEvent = window.event || event;
                oObj.onmousemove = null;
                oObj.onmouseup = null;
                if (oEvent.clientX < 1 || oEvent.clientY < 1 || oEvent.clientX > document.documentElement.clientWidth || oEvent.clientY > document.documentElement.clientHeight) {
                    oObj.style.left = backData.y + "px";
                    oObj.style.top = backData.x + "px";
                }
                if ($.browser.msie) oObj.releaseCapture();
            }
        });
    }

    function GB_hide() {
        $("#GB_window,#GB_overlay").remove();
        $("html").css("overflow", "auto");
    }

  • 相关阅读:
    ABAP Help Document(2):1.2 表达式
    ABAP Help Document(1):1.1关键字
    api——》将.doc文件转成.docx文件后缀,且仅需要输入单个文件绝对路径
    python 更改默认输出 解决编码常出错问题
    爬取法律法规代码(可直接使用)
    python datetime 模块详解
    python 获得日期列表中最大日期(能够剔出不是日期类型)
    博客园页面css
    日期大小比较令解决{strftime('%Y年%m月%d日')}出错问题
    CodeForces
  • 原文地址:https://www.cnblogs.com/cosiray/p/1587259.html
Copyright © 2020-2023  润新知