Alert提示框样式
分类:电脑知识 发表于:2013-12-13 17:10:49 评论(2)
旅途兄问提示框的样式要怎么修改,这个之前没研究过,只知道系统的提示框样式貌似不能修改,只能写仿提示框代码。像各大网站上用的漂亮的提示框,都是用DIV仿的。
后来在网上搜了一堆代码,大多都是挺复杂的,又是JS文件,又是图片,又是CSS的,整个都可以打包成一个插件了,而且很多功能都挺冗余。
最重要的是,那些代码都要ONCLICK激活动作,这明显还不能直接拿来用。
于是折腾了一天,才终于既找到简单的代码,又解决了用Response直接激活的问题。
不多说,直接上代码:
===JS代码===
<script type="text/javascript">
function Alert(str) {
var msgw,msgh,bordercolor;
var str="提交成功";
msgw=350;//提示窗口的宽度
msgh=110;//提示窗口的高度
titleheight=20 //提示窗口标题高度
bordercolor="#336699";//提示窗口的边框颜色
titlecolor="#99CCFF";//提示窗口的标题颜色
var sWidth,sHeight; //获取当前窗口尺寸
sWidth = document.body.offsetWidth;
sHeight = document.body.offsetHeight;
//背景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 = "-150px";
//窗口被卷去的高+(屏幕可用工作区高/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="提示信息";
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);
//创建一个input对象(提示框按钮)
var button=document.createElement("input");
button.setAttribute("type","button");
button.setAttribute("value","确认");
button.style.width="90px";
button.style.align="center";
button.style.padding="3px";
button.style.marginLeft="150px";
button.style.border="1px solid "+ bordercolor;
button.style.color="blue";
button.style.cursor="pointer";
button.onclick=function(){
document.body.removeChild(document.getElementById("alertbgDiv"));
document.getElementById("alertmsgDiv").removeChild(document.getElementById("alertmsgTitle"));
document.body.removeChild(document.getElementById("alertmsgDiv"));
window.location=document.referrer;
}
document.getElementById("alertmsgDiv").appendChild(button);
//设置自动关闭时间,去掉这段代码将不会自动关闭
window.setTimeout("closewin()",5000);
}
function closewin() {
document.body.removeChild(document.getElementById("alertbgDiv"));
document.getElementById("alertmsgDiv").removeChild(document.getElementById("alertmsgTitle"));
document.body.removeChild(document.getElementById("alertmsgDiv"));
location.href=document.referrer;
}
</script>
===ASP调用===
<%
Response.Write("<script type=""text/javascript"" language=""javascript"">window.onload=Alert;</script>")
%>
===onclick调用===
<input type="button" value="弹出alert框" onClick="Alert(′提交成功<br>还可以直接书写HTML代码′)">