通用弹出层页面(兼容IE、firefox)可关闭控制宽高及屏蔽背景
程序员文章站
2024-02-14 19:44:52
<%...@ page contenttype="text/html; charset=utf-8" language="java" import="java.sql...
<%...@ page contenttype="text/html; charset=utf-8" language="java" import="java.sql.*" errorpage="" %>
<%.../*
通用弹出层页面(兼容ie、firefox)
说明:
1.openwindows(width,height)----打开弹出层调用的函数,可控制层的宽度和高度
2.hiddenwindows()----关闭弹出层调用函数
3._displayselect()----隐藏下拉框标签,因为它的优先度太高
4.<div id="lockwindows">----用于实现屏蔽弹出层以下的页面
5.<div id="windowdiv">----用于显示弹出层的内容
例子(空格自己去掉):
在需要弹出层的页面引用< %@ include file="../common/common_openwindows.jsp"% >
< input type="button" onclick="openwindows('800','700');" value="编辑" / >
< input type="button" onclick="hiddenwindows();" value="关闭" / >
*/%>
<style type="text/css">...
#lockwindows{...}{
position:absolute; top:10px; left:10px; background-color:#777777; z-index:2; display:none;
/**//* moz family使用私有属性-moz-opacity: 0.70 */
/**//* ie 使用私有属性filter */
/**//* 标准属性opacity支持css3的浏览器(ff 1.5也支持)*/
opacity: 0.70;
filter : progid:dximagetransform.microsoft.alpha(style=0,opacity=70,finishopacity=100);
width:expression(documentelement.clientwidth < 900?(documentelement.clientwidth==0?(body.clientwidth<900?'900':'auto'):'900px'):'auto');
}
#windowdiv{...}{position:absolute; z-index:3; background-color:#ffffff; border:#000000 solid 1px; display:none;}
</style>
<script type="text/javascript">...
//隐藏下拉框,以解决下拉框优先度太高的问题,
function _displayselect()...{
var selects=document.getelementsbytagname("select");//整个页面的所有下拉框
var objwindow = $("windowdiv");
var divselects = objwindow.getelementsbytagname("select");//整个弹出层的所有下拉框
for(var i=0;i<selects.length;i++)...{
if(selects[i].style.visibility)...{
selects[i].style.visibility="";
}else...{
selects[i].style.visibility="hidden";
for(var j=0; i<divselects.length; j++)...{
divselects[j].style.visibility="";
}
}
}
}
function openwindows(width,height)...{
var objwindow = $("windowdiv");
var objlock = $("lockwindows");//这个是用于在ie下屏蔽内容用
objlock.style.display="block";
objlock.style.width=document.body.clientwidth+"px";
objlock.style.height=document.body.clientheight+"px";
objlock.style.minwidth=document.body.clientwidth+"px";
objlock.style.minheight=document.body.clientheight+"px";
// 判断输入的宽度和高度是否大于当前浏览器的宽度和高度
if(width>document.body.clientwidth) width = document.body.clientwidth+"px";
if(height>document.body.clientheight) height = document.body.clientheight+"px";
objwindow.style.display='block';
objwindow.style.width = width+"px";
objwindow.style.height = height+"px";
// 将弹出层居中
objwindow.style.left=(document.body.offsetwidth-width)/2+"px";
objwindow.style.top=(document.body.offsetheight-height)/2+"px";
_displayselect();
}
function hiddenwindows()...{
$("lockwindows").style.display='none';
$("windowdiv").style.display='none';
_displayselect();
}
</script>
<div id="lockwindows"> </div>
<div id="windowdiv">
<%...@ include file="../examination/openediterdiv.jsp"%>
</div>
<%.../*
通用弹出层页面(兼容ie、firefox)
说明:
1.openwindows(width,height)----打开弹出层调用的函数,可控制层的宽度和高度
2.hiddenwindows()----关闭弹出层调用函数
3._displayselect()----隐藏下拉框标签,因为它的优先度太高
4.<div id="lockwindows">----用于实现屏蔽弹出层以下的页面
5.<div id="windowdiv">----用于显示弹出层的内容
例子(空格自己去掉):
在需要弹出层的页面引用< %@ include file="../common/common_openwindows.jsp"% >
< input type="button" onclick="openwindows('800','700');" value="编辑" / >
< input type="button" onclick="hiddenwindows();" value="关闭" / >
*/%>
复制代码 代码如下:
<style type="text/css">...
#lockwindows{...}{
position:absolute; top:10px; left:10px; background-color:#777777; z-index:2; display:none;
/**//* moz family使用私有属性-moz-opacity: 0.70 */
/**//* ie 使用私有属性filter */
/**//* 标准属性opacity支持css3的浏览器(ff 1.5也支持)*/
opacity: 0.70;
filter : progid:dximagetransform.microsoft.alpha(style=0,opacity=70,finishopacity=100);
width:expression(documentelement.clientwidth < 900?(documentelement.clientwidth==0?(body.clientwidth<900?'900':'auto'):'900px'):'auto');
}
#windowdiv{...}{position:absolute; z-index:3; background-color:#ffffff; border:#000000 solid 1px; display:none;}
</style>
<script type="text/javascript">...
//隐藏下拉框,以解决下拉框优先度太高的问题,
复制代码 代码如下:
function _displayselect()...{
var selects=document.getelementsbytagname("select");//整个页面的所有下拉框
var objwindow = $("windowdiv");
var divselects = objwindow.getelementsbytagname("select");//整个弹出层的所有下拉框
for(var i=0;i<selects.length;i++)...{
if(selects[i].style.visibility)...{
selects[i].style.visibility="";
}else...{
selects[i].style.visibility="hidden";
for(var j=0; i<divselects.length; j++)...{
divselects[j].style.visibility="";
}
}
}
}
function openwindows(width,height)...{
var objwindow = $("windowdiv");
var objlock = $("lockwindows");//这个是用于在ie下屏蔽内容用
objlock.style.display="block";
objlock.style.width=document.body.clientwidth+"px";
objlock.style.height=document.body.clientheight+"px";
objlock.style.minwidth=document.body.clientwidth+"px";
objlock.style.minheight=document.body.clientheight+"px";
// 判断输入的宽度和高度是否大于当前浏览器的宽度和高度
if(width>document.body.clientwidth) width = document.body.clientwidth+"px";
if(height>document.body.clientheight) height = document.body.clientheight+"px";
objwindow.style.display='block';
objwindow.style.width = width+"px";
objwindow.style.height = height+"px";
// 将弹出层居中
objwindow.style.left=(document.body.offsetwidth-width)/2+"px";
objwindow.style.top=(document.body.offsetheight-height)/2+"px";
_displayselect();
}
function hiddenwindows()...{
$("lockwindows").style.display='none';
$("windowdiv").style.display='none';
_displayselect();
}
</script>
<div id="lockwindows"> </div>
<div id="windowdiv">
<%...@ include file="../examination/openediterdiv.jsp"%>
</div>
上一篇: freemarker 数字格式化深入理解
下一篇: JSP学习笔记