首页 > 语言 > JavaScript > 正文

js控制div弹出层实现方法

2024-05-06 16:19:53
字体:大 中 小
来源:转载
供稿:网友

这篇文章主要介绍了js控制div弹出层实现方法,可实现点击链接弹出div浮动层,且背景色变暗的效果,是一款非常实用的特效源码,需要的朋友可以参考下

本文实例讲述了js控制div弹出层实现方法。分享给大家供大家参考。具体分析如下:

这是个功能很好,且容易调用和控制的弹出层。感兴趣的朋友可以调试运行一下看看效果如何~O(∩_∩)O~

 

 
  1. <html> 
  2. <head> 
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  4. <title>弹出窗口(可拖动,背景灰色透明)</title> 
  5. <script type="text/javascript"> 
  6. <!-- 
  7. /*FileName:AlertMsg.js 
  8. title:提示标题 
  9. content:提示的内容*/ 
  10. document.write("<style type=/"text/css/">*{padding:0; margin:0}.close{float:right;cursor:default}</style>") 
  11. function $(id){ return document.getElementById(id)} 
  12. function AlertMsg(title,content){ 
  13. var msgw,msgh,msgbg,msgcolor,bordercolor,titlecolor,titlebg,con; 
  14. con = "<form><table style='margin:10px 15px 15px 15px; border:0;'><tr><th style='border:0; line-height:22px; padding:3px 0; vertical-align:top;font-weight:bold;'>分类:</th><td style='border:0; line-height:22px; padding:3px 0; vertical-align:top;width:75%;'><input type='text' name='typename' size='20'/></td></tr><tr><th></th><td style='border:0; line-height:22px; padding:3px 0; vertical-align:top;width:75%;'><button style='line-height:normal;' type='submit' onclick='return submitform()'>确定</button> <button style='line-height:normal;' type='reset'>取消</button></td></tr></table></form>"; 
  15. //弹出窗口设置 
  16. msgw = 300; //窗口宽度 
  17. msgh = 150; //窗口高度 
  18. msgbg = "#FFF"; //内容背景 
  19. msgcolor = "#000"; //内容颜色 
  20. bordercolor = "#000"; //边框颜色 
  21. titlecolor = "#FFF"; //标题颜色 
  22. titlebg = "#369"; //标题背景 
  23. //遮罩背景设置 
  24. var sWidth,sHeight; 
  25. sWidth = screen.availWidth; 
  26. sHeight = document.body.scrollHeight; 
  27. //创建遮罩背景 
  28. var maskObj = document.createElement("div"); 
  29. maskObj.setAttribute('id','maskdiv'); 
  30. maskObj.style.position = "absolute"; 
  31. maskObj.style.top = "0"; 
  32. maskObj.style.left = "0"; 
  33. maskObj.style.background = "#777"; 
  34. maskObj.style.filter = "Alpha(opacity=30);"; 
  35. maskObj.style.opacity = "0.3"; 
  36. maskObj.style.width = sWidth + "px"; 
  37. maskObj.style.height = sHeight + "px"; 
  38. maskObj.style.zIndex = "10000"; 
  39. document.body.appendChild(maskObj); 
  40. //创建弹出窗口 
  41. var msgObj = document.createElement("div") 
  42. msgObj.setAttribute("id","msgdiv"); 
  43. msgObj.style.position ="absolute"; 
  44. msgObj.style.top = (screen.availHeight - msgh) / 4 + "px"; 
  45. msgObj.style.left = (screen.availWidth - msgw) / 2 + "px"; 
  46. msgObj.style.width = msgw + "px"; 
  47. msgObj.style.height = msgh + "px"; 
  48. msgObj.style.fontSize = "12px"; 
  49. msgObj.style.background = msgbg; 
  50. msgObj.style.border = "1px solid " + bordercolor; 
  51. msgObj.style.zIndex = "10001"; 
  52. //创建标题 
  53. var thObj = document.createElement("div"); 
  54. thObj.setAttribute("id","msgth"); 
  55. thObj.className = "DragAble"; 
  56. thObj.style.cursor = "move"; 
  57. thObj.style.padding = "4px 6px"; 
  58. thObj.style.color = titlecolor; 
  59. thObj.style.background = titlebg; 
  60. var titleStr = "<a class='close' title='关闭' style='cursor:pointer' onclick='CloseMsg()'>关闭</a>"+"<span>"+ title +"</span>"; 
  61. thObj.innerHTML = titleStr; 
  62. //创建内容 
  63. var bodyObj = document.createElement("div"); 
  64. bodyObj.setAttribute("id","msgbody"); 
  65. bodyObj.style.padding = "10px"; 
  66. bodyObj.style.lineHeight = "1.5em"; 
  67. bodyObj.innerHTML = con; 
  68. var txt = document.createTextNode(content) 
  69. bodyObj.appendChild(txt); 
  70. //生成窗口 
  71. document.body.appendChild(msgObj); 
  72. $("msgdiv").appendChild(thObj); 
  73. $("msgdiv").appendChild(bodyObj); 
  74. } 
  75. function CloseMsg(){ 
  76. //移除对象 
  77. document.body.removeChild($("maskdiv")); 
  78. $("msgdiv").removeChild($("msgth")); 
  79. $("msgdiv").removeChild($("msgbody")); 
  80. document.body.removeChild($("msgdiv")); 
  81. } 
  82. //拖动窗口 
  83. var ie = document.all;  
  84. var nn6 = document.getElementById&&!document.all;  
  85. var isdrag = false;  
  86. var y,x;  
  87. var oDragObj;  
  88. function moveMouse(e) {  
  89. if (isdrag) {  
  90. oDragObj.style.top = (nn6 ? nTY + e.clientY - y : nTY + event.clientY - y)+"px";  
  91. oDragObj.style.left = (nn6 ? nTX + e.clientX - x : nTX + event.clientX - x)+"px";  
  92. return false;  
  93. }  
  94. }  
  95. function initDrag(e) {  
  96. var oDragHandle = nn6 ? e.target : event.srcElement;  
  97. var topElement = "HTML";  
  98. while (oDragHandle.tagName != topElement && oDragHandle.className != "DragAble") {  
  99. oDragHandle = nn6 ? oDragHandle.parentNode : oDragHandle.parentElement;  
  100. }  
  101. if (oDragHandle.className=="DragAble") {  
  102. isdrag = true;  
  103. oDragObj = oDragHandle.parentNode;  
  104. nTY = parseInt(oDragObj.style.top);  
  105. y = nn6 ? e.clientY : event.clientY;  
  106. nTX = parseInt(oDragObj.style.left);  
  107. x = nn6 ? e.clientX : event.clientX;  
  108. document.onmousemove = moveMouse;  
  109. return false;  
  110. }  
  111. }  
  112. document.onmousedown = initDrag;  
  113. document.onmouseup = new Function("isdrag=false");  
  114. //--> 
  115. </script> 
  116. </head> 
  117. <body> 
  118. <table width="600" border="0" cellspacing="0" cellpadding="0"> 
  119. <tr > 
  120. <td height="100" align="center" > 
  121. <p><a href="javascript:AlertMsg("温馨提示",'')">点我试试!</a></p> 
  122. </td> 
  123. </tr> 
  124. </table> 
  125. </div> 
  126. </body> 
  127. </html> 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选