js控制div弹出层实现方法
本文实例讲述了js控制div弹出层实现方法。分享给大家供大家参考。具体分析如下:
这是个功能很好,且容易调用和控制的弹出层。感兴趣的朋友可以调试运行一下看看效果如何~O(∩_∩)O~
<html> <head> <metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/> <title>弹出窗口(可拖动,背景灰色透明)</title> <scripttype="text/javascript"> <!-- /*FileName:AlertMsg.js title:提示标题 content:提示的内容*/ document.write("<styletype=\"text/css\">*{padding:0;margin:0}.close{float:right;cursor:default}</style>") function$(id){returndocument.getElementById(id)} functionAlertMsg(title,content){ varmsgw,msgh,msgbg,msgcolor,bordercolor,titlecolor,titlebg,con; con="<form><tablestyle='margin:10px15px15px15px;border:0;'><tr><thstyle='border:0;line-height:22px;padding:3px0;vertical-align:top;font-weight:bold;'>分类:</th><tdstyle='border:0;line-height:22px;padding:3px0;vertical-align:top;width:75%;'><inputtype='text'name='typename'size='20'/></td></tr><tr><th></th><tdstyle='border:0;line-height:22px;padding:3px0;vertical-align:top;width:75%;'><buttonstyle='line-height:normal;'type='submit'onclick='returnsubmitform()'>确定</button><buttonstyle='line-height:normal;'type='reset'>取消</button></td></tr></table></form>"; //弹出窗口设置 msgw=300;//窗口宽度 msgh=150;//窗口高度 msgbg="#FFF";//内容背景 msgcolor="#000";//内容颜色 bordercolor="#000";//边框颜色 titlecolor="#FFF";//标题颜色 titlebg="#369";//标题背景 //遮罩背景设置 varsWidth,sHeight; sWidth=screen.availWidth; sHeight=document.body.scrollHeight; //创建遮罩背景 varmaskObj=document.createElement("div"); maskObj.setAttribute('id','maskdiv'); maskObj.style.position="absolute"; maskObj.style.top="0"; maskObj.style.left="0"; maskObj.style.background="#777"; maskObj.style.filter="Alpha(opacity=30);"; maskObj.style.opacity="0.3"; maskObj.style.width=sWidth+"px"; maskObj.style.height=sHeight+"px"; maskObj.style.zIndex="10000"; document.body.appendChild(maskObj); //创建弹出窗口 varmsgObj=document.createElement("div") msgObj.setAttribute("id","msgdiv"); msgObj.style.position="absolute"; msgObj.style.top=(screen.availHeight-msgh)/4+"px"; msgObj.style.left=(screen.availWidth-msgw)/2+"px"; msgObj.style.width=msgw+"px"; msgObj.style.height=msgh+"px"; msgObj.style.fontSize="12px"; msgObj.style.background=msgbg; msgObj.style.border="1pxsolid"+bordercolor; msgObj.style.zIndex="10001"; //创建标题 varthObj=document.createElement("div"); thObj.setAttribute("id","msgth"); thObj.className="DragAble"; thObj.style.cursor="move"; thObj.style.padding="4px6px"; thObj.style.color=titlecolor; thObj.style.background=titlebg; vartitleStr="<aclass='close'title='关闭'style='cursor:pointer'onclick='CloseMsg()'>关闭</a>"+"<span>"+title+"</span>"; thObj.innerHTML=titleStr; //创建内容 varbodyObj=document.createElement("div"); bodyObj.setAttribute("id","msgbody"); bodyObj.style.padding="10px"; bodyObj.style.lineHeight="1.5em"; bodyObj.innerHTML=con; vartxt=document.createTextNode(content) bodyObj.appendChild(txt); //生成窗口 document.body.appendChild(msgObj); $("msgdiv").appendChild(thObj); $("msgdiv").appendChild(bodyObj); } functionCloseMsg(){ //移除对象 document.body.removeChild($("maskdiv")); $("msgdiv").removeChild($("msgth")); $("msgdiv").removeChild($("msgbody")); document.body.removeChild($("msgdiv")); } //拖动窗口 varie=document.all; varnn6=document.getElementById&&!document.all; varisdrag=false; vary,x; varoDragObj; functionmoveMouse(e){ if(isdrag){ oDragObj.style.top=(nn6?nTY+e.clientY-y:nTY+event.clientY-y)+"px"; oDragObj.style.left=(nn6?nTX+e.clientX-x:nTX+event.clientX-x)+"px"; returnfalse; } } functioninitDrag(e){ varoDragHandle=nn6?e.target:event.srcElement; vartopElement="HTML"; while(oDragHandle.tagName!=topElement&&oDragHandle.className!="DragAble"){ oDragHandle=nn6?oDragHandle.parentNode:oDragHandle.parentElement; } if(oDragHandle.className=="DragAble"){ isdrag=true; oDragObj=oDragHandle.parentNode; nTY=parseInt(oDragObj.style.top); y=nn6?e.clientY:event.clientY; nTX=parseInt(oDragObj.style.left); x=nn6?e.clientX:event.clientX; document.onmousemove=moveMouse; returnfalse; } } document.onmousedown=initDrag; document.onmouseup=newFunction("isdrag=false"); //--> </script> </head> <body> <tablewidth="600"border="0"cellspacing="0"cellpadding="0"> <tr> <tdheight="100"align="center"> <p><ahref="javascript:AlertMsg("温馨提示",'')">点我试试!</a></p> </td> </tr> </table> </div> </body> </html>
希望本文所述对大家的javascript程序设计有所帮助。