首页 > 代码库 > js彈出層或者js彈出引用url Frame 層
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; width: ", 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 = http://www.mamicode.com/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 = http://www.mamicode.com/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; width: 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 =http://www.mamicode.com/ url; this.DivFrame.appendChild(this.PageFrame); document.body.appendChild(this.DivFrame); } else { this.PageFrame.src =http://www.mamicode.com/ 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 = http://www.mamicode.com/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; width:"+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();
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。