Lazarus中文社区

 找回密码
 立即注册(注册审核可向QQ群索取)

QQ登录

只需一步,快速开始

版权申明
查看: 4811|回复: 0

收集的几个JS弹出层的例子

[复制链接]

该用户从未签到

发表于 2010-1-26 16:51:15 | 显示全部楼层 |阅读模式
下面是这般的应用:
  1. <!DOCTYPE html>
  2. <html>
  3. <head><title>JS弹出层</title>
  4. <style>
  5. body {margin:0px}
  6. #Loading {position:absolute;z-index:10;left:10px;top:10px;border:1px #666666 solid;background:#eeeeee;width:10px;height:10px}
  7. </style>
  8. <script LANGUAGE="JavaScript">
  9. <!--
  10. function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);}
  11. var OverH,OverW,ChangeDesc,ChangeH=50,ChangeW=50;
  12. function OpenDiv(_Dw,_Dh,_Desc) {
  13. $("Loading").innerHTML="";
  14. OverH=_Dh;OverW=_Dw;ChangeDesc=_Desc;
  15. $("Loading").style.display='';
  16. if(_Dw>_Dh){ChangeH=Math.ceil((_Dh-10)/((_Dw-10)/50))}else if(_Dw<_Dh){ChangeW=Math.ceil((_Dw-10)/((_Dh-10)/50))}
  17. $("Loading").style.top=(document.documentElement.clientHeight-10)/2+"px";
  18. $("Loading").style.left=(document.documentElement.clientWidth-10)/2+"px";
  19. OpenNow()
  20. }
  21. var Nw=10,Nh=10;
  22. function OpenNow() {
  23. if (Nw>OverW-ChangeW)ChangeW=2;
  24. if (Nh>OverH-ChangeH)ChangeH=2;
  25. Nw=Nw+ChangeW;Nh=Nh+ChangeH;
  26. if(OverW>Nw||OverH>Nh) {
  27. if(OverW>Nw) {
  28. $("Loading").style.width=Nw+"px";
  29. $("Loading").style.left=(document.documentElement.clientWidth-Nw)/2+"px";
  30. }
  31. if(OverH>Nh) {
  32. $("Loading").style.height=Nh+"px";
  33. $("Loading").style.top=(document.documentElement.clientHeight-Nh)/2+"px"
  34. }
  35. window.setTimeout("OpenNow()",10)
  36. }else{
  37. Nw=10;Nh=10;ChangeH=50;ChangeW=50;
  38. $("Loading").innerHTML=ChangeDesc;
  39. }
  40. }
  41. //-->
  42. </script>
  43. </head>
  44. <body>
  45. <a href="javascript:OpenDiv(500,300,'层1<br>双击关闭')">层1 500*300</a><br><br>
  46. <a href="javascript:OpenDiv(500,200,'层2<br>双击关闭')">层2 500*200</a><br><br>
  47. <a href="javascript:OpenDiv(200,500,'层3<br>双击关闭')">层3 200*500</a><br><br>
  48. <a href="javascript:OpenDiv(500,500,'层4<br>双击关闭')">层4 500*500</a>
  49. <div id="Loading" style="display:none" ondblclick="this.style.display='none'"></div>
  50. </body>
  51. </html>
复制代码


下面的例子可以定位:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url=http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]">
  2. <html xmlns="[url=http://www.w3.org/1999/xhtml]http://www.w3.org/1999/xhtml[/url]">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>JS弹出层</title>
  6. <script language="javascript">
  7. function BOX_show(e)//显示
  8. {
  9.     if(document.getElementById(e)==null)
  10.     {
  11.         return ;
  12.     }
  13.     var selects = document.getElementsByTagName('select');
  14.     for(i = 0; i < selects.length; i++)
  15.     {
  16.         selects[i].style.visibility = "hidden";
  17.     }
  18.     BOX_layout(e);
  19.     window.onresize = function(){BOX_layout(e);} //改变窗体重新调整位置
  20.     window.onscroll = function(){BOX_layout(e);} //滚动窗体重新调整位置
  21.     document.onkeyup = function(event)
  22.     {
  23.         var evt = window.event || event;
  24.         var code = evt.keyCode?evt.keyCode : evt.which;
  25.         //alert(code);
  26.         if(code == 27)
  27.         {
  28.             BOX_remove(e);
  29.         }
  30.     }
  31. }
  32. function BOX_remove(e)//移除
  33. {
  34.     window.onscroll = null;
  35.     window.onresize = null;
  36.     document.getElementById('BOX_overlay').style.display="none";
  37.     document.getElementById(e).style.display="none";
  38.     var selects = document.getElementsByTagName('select');
  39.     for(i = 0; i < selects.length; i++)
  40.     {
  41.         selects[i].style.visibility = "visible";
  42.     }
  43. }
  44. function BOX_layout(e)//调整位置
  45. {
  46.     var a = document.getElementById(e);
  47.     if (document.getElementById('BOX_overlay')==null)//判断是否新建遮掩层
  48.     {
  49.         var overlay = document.createElement("div");
  50.         overlay.setAttribute('id','BOX_overlay');
  51.         //overlay.onclick=function(){BOX_remove(e);};
  52.         //a.parentNode.appendChild(overlay);
  53.         document.body.appendChild(overlay);
  54.     }
  55.     document.getElementById('BOX_overlay').ondblclick=function(){BOX_remove(e);};
  56.     //取客户端左上坐标,宽,高
  57.     var scrollLeft = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
  58.     var scrollTop = (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
  59.     var clientWidth;
  60.     if (window.innerWidth)
  61.     {
  62.         clientWidth = window.innerWidth;
  63.        // clientWidth = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerWidth : Math.min(window.innerWidth, document.documentElement.clientWidth));
  64.     }
  65.     else
  66.     {
  67.         clientWidth = document.documentElement.clientWidth;
  68.     }
  69.     var clientHeight;
  70.     if (window.innerHeight)
  71.     {
  72.         clientHeight = window.innerHeight;
  73.         //clientHeight = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerHeight : Math.min(window.innerHeight, document.documentElement.clientHeight));
  74.     }
  75.     else
  76.     {
  77.         clientHeight = document.documentElement.clientHeight;
  78.     }
  79.     var bo = document.getElementById('BOX_overlay');
  80.     bo.style.left = scrollLeft+'px';
  81.     bo.style.top = scrollTop+'px';
  82.     bo.style.width = clientWidth+'px';
  83.     bo.style.height = clientHeight+'px';
  84.     bo.style.display="";
  85.     //Popup窗口定位
  86.     a.style.position = 'absolute';
  87.     a.style.zIndex=999;
  88.     a.style.display="";
  89.     //a.style.left = scrollLeft+((clientWidth-a.offsetWidth)/2)+'px';
  90.     //a.style.top = scrollTop+((clientHeight-a.offsetHeight)/2)+'px';
  91. }
  92. function HiddenButton(e)
  93. {
  94.     e.style.visibility='hidden';
  95.     e.coolcodeviousSibling.style.visibility='visible'
  96. }
  97. </script>
  98. <style type="text/css">
  99. body{}
  100. #BOX_overlay{position: absolute;z-index: 100;top: 0px;left: 0px;background-color:#ccc;filter: alpha(opacity=70);-moz-opacity: 0.7;opacity: 0.7;}
  101. </style>
  102. </head>
  103. <body>
  104. <p onClick="BOX_show('messdiv')"  style="cursor:pointer;">点我就出来</p>
  105. <div id="messdiv" style="position:absolute; display:none; top:135px; left:350px; width:560px; padding:10px 20px 0; background:#f8e2a0;text-align:left; border:2px solid #5d3f0c;z-index:999; font-size:12px;">
  106.         <p style="text-align:right; margin:0; padding:0; line-height:14px; float:right;"><a href="javascript:void(0)" title="关闭" style="line-height:14px;font-size:12px; color:#333;" onclick="BOX_remove('messdiv')" target="_self">关闭</a></p>
  107. <br /><br /><br /><br />这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容<br /><br /><br /><br /><br /><br /><br /><br />
  108.                    <div style="width:176px;padding:0 120px;overflow:hidden;margin:10px auto 20px;">
  109.                 <a title="关闭窗口" href="javascript:void(0)" onclick="BOX_remove('messdiv')" target="_self"  style=" background:#fff;float:left; width:70px;height:20px;padding:5px 0 0 10px;color:#feeba9;margin-right:10px;"><span style="color:#ffd014;">关闭窗口</span></a>
  110.                 <a title="收藏页面" href="javascript:void(0)" onClick="addbookmark()" target="_self" style=" background:#fff;float:left;width:70px;height:20px;padding:5px 0 0 10px;color:#feeba9;"><span style="color:#ffd014;">收藏页面</span></a>
  111.             </div>
  112.         <div style="clear:both;"></div>
  113. </div>
  114. <div id="BOX_overlay"></div>
  115. <script type="text/javascript">
  116. //添加收藏夹
  117. function addbookmark()
  118. {
  119.     var nome_sito = "可咔酷";
  120.     var url_sito = "[url=http://www.kekaku.com/]http://www.kekaku.com[/url]";
  121.     if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt
  122.         (navigator.appVersion) >= 4))
  123.         window.external.AddFavorite(url_sito, nome_sito);
  124.     else if (navigator.appName == "Netscape")
  125.         window.sidebar.addPanel(nome_sito, url_sito, '');
  126.     else
  127.         alert("Sorry!Cann't Add this site to your favorite!.");
  128. }
  129. </script>
  130. </body>
  131. </html>
  132. 下面的JS弹出层可以拖动:
  133. [code]
  134. <html>
  135. <head>
  136.   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  137.   <title>简单的测试页面</title>
  138.   <style type="text/css">
  139.   <!--
  140.     html
  141.     {
  142.       height: 100%;
  143.     }
  144.     body
  145.     {
  146.       margin: 0px;
  147.       padding: 0px;
  148.       height: 100%;
  149.     }
  150.     #dt_3
  151.     {
  152.       cursor: pointer;
  153.     }
  154.     div#mbDIV
  155.     {
  156.       position: absolute;
  157.       top: 0px;
  158.       left: 0px;
  159.       width: 100%;
  160.       height: 100%;
  161.       background-color: #AAAAAA;
  162.       z-index: 10;
  163.       filter: alpha(opacity=80);opacity:0.8;
  164.     }
  165.     div#loginDIV
  166.     {
  167.       position: absolute;
  168.       width: 300px;
  169.       height: 150px;
  170.       background-color: #FFFF00;
  171.       z-index: 20;
  172.     }
  173.     div#loginTopDIV
  174.     {
  175.       width: 100%;
  176.       height: 20px;
  177.       background-color: #FF0000;
  178.       cursor: move;
  179.     }
  180.   -->
  181.   </style>
  182.   <script type="text/javascript">
  183.   <!--
  184.     function show(ele)
  185.     {
  186.       eval(ele + ".style.display = ''");
  187.     }
  188.     function hidden(ele)
  189.     {
  190.       eval(ele + ".style.display = 'none'");
  191.     }
  192.   //-->
  193.   </script>
  194. </head>
  195. <body>
  196. <div style="overflow: hidden;">
  197. <h3>请点击 --> 03号拖拉机</h3>
  198. <p id="dt_1">01号拖拉机</p>
  199. <p id="dt_2">02号拖拉机</p>
  200. <p id="dt_3">03号拖拉机</p>
  201. <p id="dt_4">04号拖拉机</p>
  202. <p id="dt_5">05号拖拉机</p>
  203. <p id="dt_6">06号拖拉机</p>
  204. <p id="dt_7">07号拖拉机</p>
  205. <p id="dt_8">08号拖拉机</p>
  206. <p id="dt_9">09号拖拉机</p>
  207. <p id="dt_10">10号拖拉机</p>
  208. <p id="dt_11">11号拖拉机</p>
  209. </div>
  210. <div id="mbDIV" style="display: none;"></div>
  211. <div id="loginDIV" style="top: 200px;left: 300px;display: none;">
  212. <div id="loginTopDIV">Move</div>
  213. <p style="text-align: center;">登陆内容在这里哦</p>
  214. <form action="#" method="get" style="text-align: center;">
  215. <input type="button" value="确定" id="button_1" /> <input type="button" value="取消" id="button_2" />
  216. </form>
  217. </div>
  218. <script type="text/javascript">
  219. <!--
  220. /**
  221. * 这里是乱七八遭信息
  222. * */
  223.   for(var i=1;i<=11;i++)
  224.   {
  225.     eval("var dt_" + i + " = document.getElementById('dt_" + i + "')");
  226.   }
  227.   var mbDIV = document.getElementById("mbDIV");
  228.   var loginDIV = document.getElementById("loginDIV");
  229.   var loginTopDIV = document.getElementById("loginTopDIV");
  230.   document.getElementById("button_1").onclick = function()
  231.                                                 {
  232.                                                   hidden("loginDIV");
  233.                                                   hidden("mbDIV");
  234.                                                 }
  235.   document.getElementById("button_2").onclick = function()
  236.                                                 {
  237.                                                   hidden("loginDIV");
  238.                                                   hidden("mbDIV");
  239.                                                 }
  240.   dt_3.onclick = function()
  241.                  {
  242.                    loginDIV.style.top = "200px";
  243.                    loginDIV.style.left = "300px";
  244.                    show("loginDIV");
  245.                    show("mbDIV")
  246.                  }
  247. /**
  248. *这里写的是拖动信息
  249. * */
  250.     loginTopDIV.onmousedown = Down;
  251.     var tHeight,lWidth;
  252.     function Down(e)
  253.     {
  254.         var event = window.event || e;
  255.         tHeight = event.clientY  - parseInt(loginDIV.style.top.replace(/px/,""));
  256.         lWidth  = event.clientX - parseInt(loginDIV.style.left.replace(/px/,""));
  257.         document.onmousemove = Move;
  258.         document.onmouseup   = Up;
  259.     }
  260.     function Move(e) {
  261.         var event = window.event || e;
  262.         var top = event.clientY - tHeight;
  263.         var left = event.clientX - lWidth;
  264.         //判断 top 和 left 是否超出边界
  265.         top = top < 0 ? 0 : top;
  266.         top = top > document.body.offsetHeight - 150 ? document.body.offsetHeight - 150 : top;
  267.         left = left < 0 ? 0 : left;
  268.         left = left > document.body.offsetWidth - 300 ? document.body.offsetWidth - 300 : left;
  269.         loginDIV.style.top  = top + "px";
  270.         loginDIV.style.left = left +"px";
  271.     }
  272.     function Up() {
  273.         document.onmousemove = null;
  274.     }
  275. //-->
  276. </script>
  277. </body>
  278. </html>
复制代码

[/code]
回复

使用道具 举报

*滑块验证:

本版积分规则

QQ|手机版|小黑屋|Lazarus中国|Lazarus中文社区 ( 鄂ICP备16006501号-1 )

GMT+8, 2025-5-2 22:52 , Processed in 0.026135 second(s), 10 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表