您的位置:首页 > Web前端 > JavaScript

可自动关闭的JS消息提示框

2012-08-31 11:36 281 查看
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.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 = "-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="提示信息";

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);

//设置关闭时间

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

}

function closewin() {

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

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

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

}

使用方法 直接调用Alert('提示信息')即可,如下:

<script type="text/javascript">

Html代码



function form_check(){

if(document.form1.user.value==""){Alert("请输入用户名!");document.form1.user.focus();return (false);}

if(document.form1.password.value==""){Alert("请输入密码!");document.form1.password.focus();return (false);}

}

</script>

<form name="form1" onsubmit="return form_check();" method="post" action="login.asp">

用户名: <input name="user" type="text" id="user"/>

密码: <input name="password" type="password" id="password" />

<INPUT id=btnEnter type=image src="images/login.gif" name=btnEnter>

下面是完整的例子

<html>
<head>
<title>JavaScript自动关闭窗口</title>
<meta http-equiv="content-Type" content="text/html;charset=gb2312">
</head>
<body>
<input type="button" value="弹出alert框自动关闭" onClick="Alert('不点击确定三秒后自动关闭')">
<script>
//自动关闭提示框
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.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 = "-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="提示信息";
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);
//设置关闭时间
window.setTimeout("closewin()",2000);
}
function closewin() {
document.body.removeChild(document.getElementById("alertbgDiv"));
document.getElementById("alertmsgDiv").removeChild(document.getElementById("alertmsgTitle"));
document.body.removeChild(document.getElementById("alertmsgDiv"));
}
</script>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: