网站的时候,我们往往要做很多小的操作,但是有不能不做,比如:简单留言,二次登陆,评论等。
这些功能很小,不值得用一个页面来实现其功能,那么“弹出层”就是最好的选择了。弹出层顾名思义,就是在原网页中弹出一个遮罩层,操作就在这个遮罩层中进行。
其实遮罩层就是一个div只不过要控制好他何时显示,何时消失。
比如我想在一个页面中弹出一个留言层,代码如下:
在需要的页面添加如下代码:
<script type="text/javascript" language="javascript">
function ShowNo() //隐藏两个层
{
document.getElementById("doing").style.display="none";
document.getElementById("divLogin").style.display="none";
}
function $(id)
{
return (document.getElementById) ? document.getElementById(id) : document.all[id] ;
}
function showFloat() //根据屏幕的大小显示两个层
{
var range = getRange();
$('doing').style.width = range.width + "px";
$('doing').style.height = range.height + "px";
$('doing').style.display = "block";
document.getElementById("divLogin").style.display="";
}
function getRange() //得到屏幕的大小
{
var top = document.body.scrollTop;
var left = document.body.scrollLeft;
var height = document.body.clientHeight;
var width = document.body.clientWidth;
if (top==0 && left==0 && height==0 && width==0)
{
top = document.documentElement.scrollTop;
left = document.documentElement.scrollLeft;
height = document.documentElement.clientHeight;
width = document.documentElement.clientWidth;
}
return {top:top ,left:left ,height:height ,width:width } ;
}
</script>
<!--加一个半透明层-->
<div id="doing" style="filter:alpha(opacity=30);-moz-opacity:0.3;opacity:0.3;background-color:#000;width:100%;height:100%;z-index:1000;position: absolute;left:0;top:0;display:none;overflow: hidden;">
</div>
<!--加一个登录层-->
<div id="divLogin" style="border:solid 10px #898989;background:#fff;padding:10px;width:780px;z-index:1001; position: absolute; display:none;top:50%; left:50%;margin:-200px 0 0 -400px;">
<div style="padding:3px 15px 3px 15px;text-align:left;vertical-align:middle;" >
<div>
您正在给 会员--<asp:Label ID="lbToWho" runat="server" Text=""></asp:Label> 留言
<br />
<br />
标题:
<asp:TextBox ID="TxtTitle" runat="server" Width="349px" ></asp:TextBox>
</div>
<br />
<div>
内容:
<asp:TextBox ID="TxtContent" runat="server" TextMode="MultiLine" Height="65px"
Width="355px"></asp:TextBox>
</div>
<br/>
<div>
<asp:Button ID="BtnCommite" runat="server" Text="提交留言"
onclick="BtnCommite_Click"/>
<input id="BttCancel" type="button" value="关 闭" onclick="ShowNo()" />
</div>
</div>
</div>
调用:
<a href="javascript:void(0)" onclick="showFloat()" style="color:Red;">给我留言 </a>
直接运行你就可以看到非常漂亮的弹出层了。
此遮罩层不能显示在页面flash上面,这是个缺点。
现在只要你在<div>里面写你想干的事情就OK了。
本文作者:jackvoilet 来源:网络 http://hi.baidu.com/jackvoilet/blog/
CIO之家 www.ciozj.com 微信公众号:imciow