html 自制提示框,javascript自制提示框功能

平时在应用ajax完成一些操作后总会使用alert来给用户返回一些提示信息。但是介于alert的样式过于单调。

所以有时要自己写一个类似的提示框,并加以美化。

从网上找了一个现成的提示框。不过那个提示框还是有一些缺陷的,在出现浏览器测滚轮情况下和在IE与FF之间的兼容问题。

做修改后,可以正常的在两个浏览器上使用。

例子,js提示框代码。

复制代码 代码示例:

//提交完毕后弹出提示信息并自动关闭

function Alert(str) {

var msgw,msgh,bordercolor;

msgw=350;//提示窗口的宽度

msgh=80;//提示窗口的高度

titleheight=25 //提示窗口标题高度

bordercolor="#336699";//提示窗口的边框颜色

titlecolor="#99CCFF";//提示窗口的标题颜色

var sWidth,sHeight;

//获取当前窗口尺寸

sWidth = document.body.offsetWidth;

sHeight = document.body.scrollHeight;

//背景div

var bgObj=document.createElement("div");

bgObj.setAttribute(‘id‘,‘alertbgDiv‘);

bgObj.style.position="absolute";

bgObj.style.top="0";

bgObj.style.background="#E8E8E8";

bgObj.style.filter="progid:DXImageTransform.Microsoft.Alpha(style=3,opacity=25,finishOpacity=75";

bgObj.style.opacity="0.6";

bgObj.style.left="0";

bgObj.style.width = sWidth + "px";

bgObj.style.height = sHeight + "px";

bgObj.style.zIndex = "10000";

document.body.appendChild(bgObj);

//创建提示窗口的div

var msgObj = document.createElement("div")

msgObj.setAttribute("id","alertmsgDiv");

msgObj.setAttribute("align","center");

msgObj.style.background="white";

msgObj.style.border="1px solid " + bordercolor;

msgObj.style.position = "absolute";

msgObj.style.left = "50%";

msgObj.style.font="12px/1.6em Verdana, Geneva, Arial, Helvetica, sans-serif";

//窗口距离左侧和顶端的距离

msgObj.style.marginLeft = "-225px";

//窗口被卷去的高+(屏幕可用工作区高/2)-150

msgObj.style.top = document.body.scrollTop+(window.screen.availHeight/2)-150 +"px";

msgObj.style.width = msgw + "px";

msgObj.style.height = msgh + "px";

msgObj.style.textAlign = "center";

msgObj.style.lineHeight ="25px";

msgObj.style.zIndex = "10001";

document.body.appendChild(msgObj);

//提示信息标题

var title=document.createElement("h4");

title.setAttribute("id","alertmsgTitle");

title.setAttribute("align","left");

title.style.margin="0";

title.style.padding="3px";

title.style.background = bordercolor;

title.style.filter="progid:DXImageTransform.Microsoft.Alpha(startX=20, startY=20, finishX=100, finishY=100,style=1,opacity=75,finishOpacity=100);";

title.style.opacity="0.75";

title.style.border="1px solid " + bordercolor;

title.style.height="18px";

title.style.font="12px Verdana, Geneva, Arial, Helvetica, sans-serif";

title.style.color="white";

title.innerHTML="飞鸽Digg Alpha 0.1";

document.getElementById("alertmsgDiv").appendChild(title);

//提示信息

var txt = document.createElement("p");

txt.setAttribute("id","msgTxt");

txt.style.margin="16px 0";

txt.innerHTML = str;

document.getElementById("alertmsgDiv").appendChild(txt);

//1.5秒钟后窗口自动关闭

window.setTimeout("closewin()",1500);

}

function closewin() {

document.body.removeChild(document.getElementById("alertbgDiv"));

document.getElementById("alertmsgDiv").removeChild(document.getElementById("alertmsgTitle"));

document.body.removeChild(document.getElementById("alertmsgDiv"));

}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值