首页  ·  知识 ·  云计算
漂亮的asp.net弹出层
jackvoilet   http://hi.baidu.com/jackvoilet/blog/  综合  编辑:DEZAI   图片来源:网络
网站的时候,我们往往要做很多小的操作,但是有不能不做,比如:简单留言,二次登陆,评论等。 这些功能很小,不值得用一
网站的时候,我们往往要做很多小的操作,但是有不能不做,比如:简单留言,二次登陆,评论等。
这些功能很小,不值得用一个页面来实现其功能,那么“弹出层”就是最好的选择了。弹出层顾名思义,就是在原网页中弹出一个遮罩层,操作就在这个遮罩层中进行。
其实遮罩层就是一个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> &nbsp; &nbsp;
                    <asp:Button ID="BtnCommite" runat="server" Text="提交留言"
                        onclick="BtnCommite_Click"/>&nbsp;
                    <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
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读