javascript网页弹出层练习
2024-10-18 01:50:26
网页中经常出现很多"popup"弹窗效果,这里做一个练习,给我们初学者一个参考。
HTML代码:
<div id="popup"></div>
<a id="test" href="javascript:viod(0);">弹窗1</a>
<a id="test1" href="javascript:viod(0);">弹窗2</a>
<div id="box1" class="popbox"></div>
CSS代码:
*{padding:; margin:}
#popup{position:fixed; width:100%; height:100%; z-index:; background:#666; filter:alpha(opacity=60); opacity: 0.6; display:none;}/*遮罩层样式*/
.popbox{position:absolute; display:none; padding:10px; border:5px #e2e2e2 solid; background:#FFF; width:400px; height:300px; z-index:; left:50%; top:50%;}/*弹出层样式*/
下面是JS代码,代码不精简,可以作为初学者参考哈:
function popup(obj,wd,ht){
var Width=400,Height=300;//设置一个默认的宽高
Obj=document.getElementById(obj);
if(wd!=undefined)//下面是判断有没有设置宽高参数时的宽高取值
{
Obj.style.width=wd+"px";
}
if(ht!=undefined)
{
Obj.style.height=ht+"px";
}
else if(wd!=undefined&&ht!=undefined)
{
Obj.style.width=wd+"px";
Obj.style.height=ht+"px"; }
else{
Obj.style.width=Width+"px";
Obj.style.height=Height+"px";
}
//添加关闭按钮和样式
var closeNode=document.createElement("a");
var Text=document.createTextNode("x");
closeNode.style.position="absolute";
closeNode.style.zIndex="999";
closeNode.style.right="7px";
closeNode.style.top="7px";
closeNode.style.color="#666666";
closeNode.style.padding="0 2px";
closeNode.style.background="#e2e2e2";
closeNode.style.cursor="pointer";
closeNode.appendChild(Text);
document.getElementById("popup").style.display="block";
Obj.style.display="block";
Obj.style.marginLeft=-Obj.offsetWidth/2+"px";//计算水平居中
Obj.style.marginTop=-Obj.offsetHeight/2+"px";//计算垂直居中
Obj.appendChild(closeNode);
closeNode.onclick=function(){
Obj.style.display="none";
document.getElementById("popup").style.display="none";
}
}
document.getElementById("test").onclick=function(){popup("box1");}//调用1
document.getElementById("test1").onclick=function(){popup("box1","300","150");}//调用2
最新文章
- 5-2 bash 脚本编程之一 变量、变量类型等
- sudo 命令情景分析
- Java environment variables and their functionality
- Android学习笔记——ProgressBarHandler
- EPANET中的哈希文件——hash.c
- Java-->;实现群聊功能(C/S模式--TCP协议)
- NSTimer定时器的用法
- Go 语言读写 Excel
- (Sql Server)数据的拆分和合并
- JQ中的clone()方法与DOM中的cloneNode()方法
- 利用Python爬取可用的代理IP
- crypto必知必会
- oracle数据库用户删除及表空间删除
- JavaScript输入表单数据正则验证规则
- SVM:SVM之Classification根据已有大量数据集案例,输入已有病例的特征向量实现乳腺癌诊断高准确率预测—Jason niu
- 十九、State 状态模式
- BZOJ4381 : [POI2015]Odwiedziny / Luogu3591[POI2015]ODW - 分块+树剖
- A1083. List Grades
- java synchronized 同步详解
- Swift重写UIButton的图片和标题的位置