zoukankan      html  css  js  c++  java
  • js彈出層或者js彈出引用url Frame 層

    function Popup() {
        var _this = this;
        this.CssName = "layermask";//樣式
        //遮蓋層
        this.hiddLayer = function() {
            try{
                var obj = document.getElementById("syspopup_layer");
                if (obj != null)
                    document.body.removeChild(obj);
            }catch(e){}
        };
        
        this.showLayer = function() {
            try{
                var obj = document.getElementById("syspopup_layer");
                if (obj == null) {
                    obj = document.createElement("DIV");
                    obj.id = "syspopup_layer";
                    obj.className = this.CssName;
                    obj.disabled = true;
                    document.body.appendChild(obj);
                    
                    var size = qp_shared.getPageSize();
    
                    obj.style.cssText = qp_shared.contact("left: 0px;  ", size.width, "px; top: 0px; height: ", size.height, "px;");
                }
            }catch(e){}
        };
        
        this.showLoading = function() {
                if (el("sysimg_wait") == null) {
                this.Loading = document.createElement("IMG");
                this.Loading.id = "sysdiv_wait";
                this.Loading.src = qp_shared.getURL("images/wait/reloading.gif");
                this.Loading.style.zIndex = 999999;
                this.Loading.style.position = "absolute";                
                this.Loading.style.left = parseInt((window.document.documentElement.clientWidth - 24)/2) + "px";
                this.Loading.style.top = (parseInt((window.document.documentElement.clientHeight - 24)/2) + qp_shared.getDocumentScrollTop()) + "px";
                
                document.body.appendChild(this.Loading);
            };
        
            this.showLayer();
        };
        
        this.Render = function(url, w, h) {
            if (el("sysimg_wait") == null) {
                this.Loading = document.createElement("IMG");
                this.Loading.id = "sysdiv_wait";
                this.Loading.src = qp_shared.getURL("images/wait/reloading.gif");
                this.Loading.style.zIndex = 999999;
                this.Loading.style.position = "absolute";                
                this.Loading.style.left = parseInt((window.document.documentElement.clientWidth - 24)/2) + "px";
                this.Loading.style.top = (parseInt((window.document.documentElement.clientHeight - 24)/2) + qp_shared.getDocumentScrollTop()) + "px";
                
                document.body.appendChild(this.Loading);
            };
        
            if (el("sysdiv_loginFrame") == null) {
                this.DivFrame = document.createElement("DIV");
                this.DivFrame.id = "sysdiv_loginFrame";
                this.DivFrame.style.cssText = "z-index: 99999; position: absolute; left: 0px; top: 0px; display: none;  880px; height: 300px; background-color: #ffffff; border: solid 7px #ddd;";
            
                this.PageFrame = document.createElement("IFRAME");
                this.PageFrame.id = "sysifm_loginFrame";
                this.PageFrame.align = "middle";
                this.PageFrame.frameBorder = "0";
                this.PageFrame.scrolling = "auto";
                this.PageFrame.style.cssText = "z-index: 101; position: absolute; left: 0px; top: 0px";
                this.PageFrame.src = url;
                
                this.DivFrame.appendChild(this.PageFrame);
                document.body.appendChild(this.DivFrame);
            }
            else {
                this.PageFrame.src = url;
            }
    
            if (qp_shared.IsIE && this.PageFrame.readyState != "complete")
                this.PageFrame.onreadystatechange = function(e) { e = window.event || e; _this.onreadystatechange(e); };
            else if(!qp_shared.IsIE)
                this.PageFrame.onload = function(e) { e = window.event || e; _this.onreadystatechange(e); };
            else
                this.removeLoading();
        };
        
        this.RenderDiv=function(w,h,html){
            
            if (el("sysimg_wait") == null) {
                this.Loading = document.createElement("IMG");
                this.Loading.id = "sysdiv_wait";
                this.Loading.src = qp_shared.getURL("images/wait/reloading.gif");
                this.Loading.style.zIndex = 999999;
                this.Loading.style.position = "absolute";                
                this.Loading.style.left = parseInt((window.document.documentElement.clientWidth - 24)/2) + "px";
                this.Loading.style.top = (parseInt((window.document.documentElement.clientHeight - 24)/2) + qp_shared.getDocumentScrollTop()) + "px";
                
                document.body.appendChild(this.Loading);
            };
             
            if (el("sysDiv_Dialog") == null) {
    
                    this.Div_Dialog = document.createElement("DIV"); //創建div對象
                    this.Div_Dialog.id = "sysDiv_Dialog";
                    this.Div_Dialog.style.cssText = "z-index: 99999; position: absolute; left: 0px; top: 0px; display: none; "+w+"px; height: "+h+"px; background-color: #ffffff; border: solid 7px #ddd;";
               }
                
            document.body.appendChild(this.Div_Dialog); //加入Div對話框
            document.body.removeChild(this.Loading);//移除加載圖片
                
            //html為填充div的內容
            if(html!=null){
               this.Div_Dialog.innerHTML =html;
            }
        };
        
        
        //加載完成事件
        this.onreadystatechange = function(e) {
            if ((qp_shared.IsIE && this.PageFrame.readyState == "complete") || (!qp_shared.IsIE)) {
                //清空事件
                if (this.PageFrame.onreadystatechange != null)
                    this.PageFrame.onreadystatechange = null;
                //清空事件
                if (this.PageFrame.onload != null)
                    this.PageFrame.onload = null;
    
                this.removeLoading();
            }
        };
        
        //創建一個占位控件
        this.renderPlace = function(container) {
            var objContainer = el(container);
            if (objContainer != null) {
                var obj = document.createElement("DIV");
                obj.className = "placeEmpty";
                
                objContainer.appendChild(obj);
            }
        };
    
        //設置窗口大小
        this.setWindowSize = function(width, height) {
            this.PageFrame.width = this.DivFrame.style.width = width + "px";
            this.PageFrame.height = this.DivFrame.style.height = height + "px";
    
            this.DivFrame.style.left = (window.document.documentElement.clientWidth - width) / 2 + "px";
            this.DivFrame.style.top = ((window.document.documentElement.clientHeight- height) / 2 + qp_shared.getDocumentScrollTop()) + "px";
    
            this.DivFrame.style.display = "";
        };
        
    
        //設置Div窗口大小
        this.setDivWindowSize = function(width, height) {
            this.Div_Dialog.width =width + "px";
            this.Div_Dialog.height = height + "px";
    
            this.Div_Dialog.style.left = (window.document.documentElement.clientWidth - width) / 2 + "px";
            this.Div_Dialog.style.top = ((window.document.documentElement.clientHeight- height) / 2 + qp_shared.getDocumentScrollTop()) + "px";
    
            this.Div_Dialog.style.display = "";
        };
    
        //隱藏彈出窗口及遮蓋層
        this.hidden = function() {
            try {
                if (this.DivFrame != null) {
                    document.body.removeChild(this.DivFrame);
                }
            }catch(e){};
    
            this.hiddLayer();
            this.removeLoading();
        };
        
        //只關掉彈出窗口,仍然顯示遮蓋層
        this.close = function() {
            try {
                if (this.DivFrame != null) {
                    document.body.removeChild(this.DivFrame);
                }
            }catch(e){};
        };
    
        //關掉DIV彈出窗口
        this.closeDiv = function () {
            try {
                if (this.Div_Dialog != null) {
                    document.body.removeChild(this.Div_Dialog);
                    this.hiddLayer();
                }
            } catch (e) {};
        };
        
        //隱藏Loading
        this.removeLoading = function() {
            try {
                if (this.Loading != null) {
                    //當前窗口
                    var obj = document.getElementById("sysdiv_wait");
                    if (obj != null) {
                        document.body.removeChild(obj);
                    }
    
                    //父窗口
                    if (window.parent != null) {
                        obj = window.parent.document.getElementById("sysdiv_wait");
                        if (obj != null) {
                            window.parent.document.body.removeChild(obj);
                        }
                    }
                }
            }catch(e){};    
        };
    
        //顯示彈出窗口
        this.show = function(url, width, height, showPlace, cssName) {
            //顯示一個占位控件
            if (showPlace != null && showPlace != "") {
                this.renderPlace(showPlace);
            };
            
            //如果有自定css
            if (cssName != null) {
                this.CssName = cssName;
            };        
            
            //為了你防止緩存加了一個隨機數
            this.Render(qp_shared.getRandomUrl(url), width, height);
            
            this.showLayer();
    
            this.setWindowSize(width, height);
        };
        
        //彈出DIV
        this.showDivDialog = function (width, height, html) {
    
            this.showLayer();
            this.RenderDiv(width, height, html);
            this.setDivWindowSize(width, height);
        }
        
    };
    
    var oPopup = new Popup();
  • 相关阅读:
    课后作业02-需求分析
    2018年春季个人阅读计划
    eclipse 导入项目后,在工程图标上出现红叉,但是工程中的文件并没有提示错误的解决方法
    阅读博客——我们应当怎样做需求分析? ------阅读笔记
    网络记事本第一天
    软件工程第九周总结
    软件工程第八周总结
    全球疫情web制作进度
    构建之法阅读笔记03
    软件工程第七周总结
  • 原文地址:https://www.cnblogs.com/yzenet/p/3796234.html
Copyright © 2011-2022 走看看