首页 新闻 会员 周边 捐助

在页面中模式窗体一分钟后自动退出怎么办?

0
悬赏园豆:50 [已解决问题] 解决于 2010-11-25 11:00

我给你如下代码。

在我的基础上。帮我看看、谢谢。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript" type="text/javascript">
function alertWin(title, msg, w, h){
    var selObj=document.getElementsByTagName("select");
    for(var i=0;i<selObj.length;i++)
    {
        selObj[i].disabled=true;
    }
    var titleheight = "22px"; // 提示窗口标题高度
    var bordercolor = "#666699"; // 提示窗口的边框颜色
    var titlecolor = "#FFFFFF"; // 提示窗口的标题颜色
    var titlebgcolor = "#666699"; // 提示窗口的标题背景色
    var bgcolor = "#FFFFFF"; // 提示内容的背景色
  
    var iWidth = document.documentElement.clientWidth;
    var iHeight = document.documentElement.clientHeight;
    //创建div
    var bgObj = document.createElement("div");
    bgObj.id = "BgDiv";
    bgObj.style.cssText = "position:absolute;left:0px;top:0px;width:"+iWidth+"px;height:"+Math.max(document.body.clientHeight, iHeight)+"px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:101;";
    document.body.appendChild(bgObj);
    //创建div
    var msgObj=document.createElement("div");
    msgObj.id = "MsgDiv";
    msgObj.style.cssText = "position:absolute;font:11px '宋体';top:"+(iHeight-h)/2+"px;left:"+(iWidth-w)/2+"px;width:"+w+"px;height:"+h+"px;text-align:center;border:1px solid "+bordercolor+";background-color:"+bgcolor+";padding:1px;line-height:22px;z-index:103;";
    document.body.appendChild(msgObj);
    //向div中添加table
    var table = document.createElement("table");
    msgObj.appendChild(table);
    table.style.cssText = "margin:0px;border:0px;padding:0px;";
    table.cellSpacing = 0;
    var tr = table.insertRow(-1);
    var titleBar = tr.insertCell(-1);
    titleBar.style.cssText = "width:100%;height:"+titleheight+"px;text-align:left;padding:3px;margin:0px;font:bold 13px '宋体';color:"+titlecolor+";border:1px solid " + bordercolor + ";cursor:move;background-color:" + titlebgcolor;
    titleBar.style.paddingLeft = "10px";
    titleBar.innerHTML = title;
   
    //创建框架
    var mask = document.createElement("iframe");
    mask.id="PageDip"  
    //src链接
    mask.src="javascript:false";
    mask.scrolling="no";
    mask.frameborder="0";
    mask.style.position="absolute";
    mask.style.zIndex=msgObj.style.zIndex-1;
    mask.style.top=msgObj.style.top;
    mask.style.left=msgObj.style.left;
    mask.style.width=msgObj.style.width;
    mask.style.height=msgObj.style.height;
    document.body.appendChild(mask);
    var moveX = 0;
    var moveY = 0;
    var moveTop = 0;
    var moveLeft = 0;
    var moveable = false;
    var docMouseMoveEvent = document.onmousemove;
    var docMouseUpEvent = document.onmouseup;
    titleBar.onmousedown = function() {
        var evt = getEvent();
        moveable = true;
        //x坐标
        moveX = evt.clientX;
        //y坐标
        moveY = evt.clientY;
        //上距离
        moveTop = parseInt(msgObj.style.top);
        //左距离
        moveLeft = parseInt(msgObj.style.left); 
        //移动事件     
        document.onmousemove = function(o) {
            if (moveable) {
                var evt = getEvent();
                var x = moveLeft + evt.clientX - moveX;
                var y = moveTop + evt.clientY - moveY;
                if ( x > 0 &&( x + w < iWidth) && y > 0 && (y + h < iHeight) ) {
                    msgObj.style.left = x + "px";
                    msgObj.style.top = y + "px";
                    mask.style.left=msgObj.style.left;
                    mask.style.top=msgObj.style.top;
                }
            }  
        };
 
        document.onmouseup = function () {
            if (moveable) {
                document.onmousemove = docMouseMoveEvent;
                document.onmouseup = docMouseUpEvent;
                moveable = false;
                moveX = 0;
                moveY = 0;
                moveTop = 0;
                moveLeft = 0;
            }
        };
    }
   
    var closeBtn = tr.insertCell(-1);
    closeBtn.style.cssText = "cursor:pointer; padding:2px;background-color:" + titlebgcolor;
    closeBtn.innerHTML = "<span style='font-size:15pt; color:"+titlecolor+";'>×</span>";
    closeBtn.onclick = function(){
        document.body.removeChild(bgObj);
        document.body.removeChild(msgObj);
        document.body.removeChild(mask);
        var selObj=document.getElementsByTagName("select");
        for(var i=0;i<selObj.length;i++)
        {
            selObj[i].disabled=false;
        }
    }
    var msgBox = table.insertRow(-1).insertCell(-1);
    msgBox.style.cssText = "font:10pt '宋体';";
    msgBox.colSpan  = 2;
    msgmsgBox.innerHTML = msg;
   
    // 获得事件Event对象,用于兼容IE和FireFox
    function getEvent() {
        return window.event || arguments.callee.caller.arguments[0];
    }
}
function CandShow(w,h)
{
    var titleheight = "22px"; //提示窗口标题高度
    var bordercolor = "#666699"; //提示窗口的边框颜色
    var titlecolor = "#FFFFFF"; //提示窗口的标题颜色
    var titlebgcolor = "#666699";
    var bgcolor = "#FFFFFF";
        var bgObj=document.getElementById("BgDiv")
        var msgObj=document.getElementById("MsgDiv");
        var mask=document.getElementById("PageDip");
        var iWidth = document.documentElement.clientWidth;
        var iHeight = document.documentElement.clientHeight;   
        if(bgObj != null&&msgObj!=null&&mask!=null)
         {
        
                bgObj.style.cssText = "position:absolute;left:0px;top:0px;width:"+iWidth+"px;height:"+Math.max(document.body.clientHeight, iHeight)+                                                          "px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:100;";
                msgObj.style.cssText = "position:absolute;font:11px '宋体';top:"+(iHeight-h)
                2+"px;width:"+w+"px;height:"+h+                                        "px;text-align:center;border:1px solid "+bordercolor+";background-color:"+bgcolor+";padding:1px;line-height:22px;z-index:102;";          
                mask.style.zIndex=msgObj.style.zIndex-1;
                mask.style.top=msgObj.style.top;
                mask.style.left=msgObj.style.left;
                mask.style.width=msgObj.style.width;
                mask.style.height=msgObj.style.height;     
         }
}

</script>
</head>
<body onresize="CandShow(300,200)">

<p>
  <input type="button" value="点这里" onclick="alertWin('标题','这里是内容',300,200);" />
</p>
<p>
  <select>
    <option>1</option>
  </select>
  <br/><br/><br/><br/>
  <select>
    <option>2</option>
  </select>
  <br/><br/><br/><br/>
  <select>
    <option>3</option>
  </select>
  <br/><br/><br/><br/>
  <select>
    <option>4</option>
  </select>
</p>
<p><br/>
  <br/><br/>
</p>
</body></html>

ツ  ↘ 懒 猫的主页 ツ ↘ 懒 猫 | 初学一级 | 园豆:0
提问于:2010-11-25 08:31
< >
分享
最佳答案
0

首先楼主查找下msgmsgBox改成msgBox

其次,"一分钟后自动退出"是什么意思?想要弹窗在一分钟之后自动退出还是?把问题描述清楚点...

如果是一分钟之后自动退出,alertWin方法内定义一个setTimeOut("closeWin",60*1000)再写个

closeWin来清除弹出窗口和遮罩层.

 

补充:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript" type="text/javascript">
function alertWin(title, msg, w, h) {
var selObj = document.getElementsByTagName("select");
for (var i = 0; i < selObj.length; i++) {
selObj[i].disabled
= true;
}
var titleheight = "22px"; // 提示窗口标题高度
var bordercolor = "#666699"; // 提示窗口的边框颜色
var titlecolor = "#FFFFFF"; // 提示窗口的标题颜色
var titlebgcolor = "#666699"; // 提示窗口的标题背景色
var bgcolor = "#FFFFFF"; // 提示内容的背景色

var iWidth = document.documentElement.clientWidth;
var iHeight = document.documentElement.clientHeight;
//创建div
var bgObj = document.createElement("div");
bgObj.id
= "BgDiv";
bgObj.style.cssText
= "position:absolute;left:0px;top:0px;width:" + iWidth + "px;height:" + Math.max(document.body.clientHeight, iHeight) + "px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:101;";
document.body.appendChild(bgObj);
//创建div
var msgObj = document.createElement("div");
msgObj.id
= "MsgDiv";
msgObj.style.cssText
= "position:absolute;font:11px '宋体';top:" + (iHeight - h) / 2 + "px;left:" + (iWidth - w) / 2 + "px;width:" + w + "px;height:" + h + "px;text-align:center;border:1px solid " + bordercolor + ";background-color:" + bgcolor + ";padding:1px;line-height:22px;z-index:103;";
document.body.appendChild(msgObj);
//向div中添加table
var table = document.createElement("table");
msgObj.appendChild(table);
table.style.cssText
= "margin:0px;border:0px;padding:0px;";
table.cellSpacing
= 0;
var tr = table.insertRow(-1);
var titleBar = tr.insertCell(-1);
titleBar.style.cssText
= "width:100%;height:" + titleheight + "px;text-align:left;padding:3px;margin:0px;font:bold 13px '宋体';color:" + titlecolor + ";border:1px solid " + bordercolor + ";cursor:move;background-color:" + titlebgcolor;
titleBar.style.paddingLeft
= "10px";
titleBar.innerHTML
= title;

//创建框架
var mask = document.createElement("iframe");
mask.id
= "PageDip"
//src链接
mask.src = "false";
mask.scrolling
= "no";
mask.frameborder
= "0";
mask.style.position
= "absolute";
mask.style.zIndex
= msgObj.style.zIndex - 1;
mask.style.top
= msgObj.style.top;
mask.style.left
= msgObj.style.left;
mask.style.width
= msgObj.style.width;
mask.style.height
= msgObj.style.height;
document.body.appendChild(mask);
var moveX = 0;
var moveY = 0;
var moveTop = 0;
var moveLeft = 0;
var moveable = false;
var docMouseMoveEvent = document.onmousemove;
var docMouseUpEvent = document.onmouseup;
titleBar.onmousedown
= function () {
var evt = getEvent();
moveable
= true;
//x坐标
moveX = evt.clientX;
//y坐标
moveY = evt.clientY;
//上距离
moveTop = parseInt(msgObj.style.top);
//左距离
moveLeft = parseInt(msgObj.style.left);
//移动事件
document.onmousemove = function (o) {
if (moveable) {
var evt = getEvent();
var x = moveLeft + evt.clientX - moveX;
var y = moveTop + evt.clientY - moveY;
if (x > 0 && (x + w < iWidth) && y > 0 && (y + h < iHeight)) {
msgObj.style.left
= x + "px";
msgObj.style.top
= y + "px";
mask.style.left
= msgObj.style.left;
mask.style.top
= msgObj.style.top;
}
}
};

document.onmouseup
= function () {
if (moveable) {
document.onmousemove
= docMouseMoveEvent;
document.onmouseup
= docMouseUpEvent;
moveable
= false;
moveX
= 0;
moveY
= 0;
moveTop
= 0;
moveLeft
= 0;
}
};
}

var closeBtn = tr.insertCell(-1);
closeBtn.style.cssText
= "cursor:pointer; padding:2px;background-color:" + titlebgcolor;
closeBtn.innerHTML
= "<span style='font-size:15pt; color:" + titlecolor + ";'>×</span>";
closeBtn.onclick
= function () {
document.body.removeChild(bgObj);
document.body.removeChild(msgObj);
document.body.removeChild(mask);
var selObj = document.getElementsByTagName("select");
for (var i = 0; i < selObj.length; i++) {
selObj[i].disabled
= false;
}
}
var msgBox = table.insertRow(-1).insertCell(-1);
msgBox.style.cssText
= "font:10pt '宋体';";
msgBox.colSpan
= 2;
msgBox.innerHTML
= msg;

// 获得事件Event对象,用于兼容IE和FireFox
function getEvent() {
return window.event || arguments.callee.caller.arguments[0];
}

/////2秒钟之后弹出框消失//////
setTimeout(closeWin, 2000);
/////2秒钟之后弹出框消失//////
}
function CandShow(w, h) {
var titleheight = "22px"; //提示窗口标题高度
var bordercolor = "#666699"; //提示窗口的边框颜色
var titlecolor = "#FFFFFF"; //提示窗口的标题颜色
var titlebgcolor = "#666699";
var bgcolor = "#FFFFFF";
var bgObj = document.getElementById("BgDiv")
var msgObj = document.getElementById("MsgDiv");
var mask = document.getElementById("PageDip");
var iWidth = document.documentElement.clientWidth;
var iHeight = document.documentElement.clientHeight;
if (bgObj != null && msgObj != null && mask != null) {

bgObj.style.cssText
= "position:absolute;left:0px;top:0px;width:" + iWidth + "px;height:" + Math.max(document.body.clientHeight, iHeight) + "px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:100;";
msgObj.style.cssText
= "position:absolute;font:11px '宋体';top:" + (iHeight - h)
2 + "px;width:" + w + "px;height:" + h + "px;text-align:center;border:1px solid " + bordercolor + ";background-color:" + bgcolor + ";padding:1px;line-height:22px;z-index:102;";
mask.style.zIndex
= msgObj.style.zIndex - 1;
mask.style.top
= msgObj.style.top;
mask.style.left
= msgObj.style.left;
mask.style.width
= msgObj.style.width;
mask.style.height
= msgObj.style.height;
}
}

////////////////////清除弹出窗口创建的元素/////////////////////
function closeWin() {
document.getElementById(
"MsgDiv").removeNode(true);
document.getElementById(
"BgDiv").removeNode(true);
document.getElementById(
"PageDip").removeNode(true);
}
////////////////////清除弹出窗口创建的元素/////////////////////
</script>
</head>
<body onresize="CandShow(300,200)">
<p>
<input type="button" value="点这里" onclick="alertWin('标题','这里是内容',300,200);" />
</p>
<p>
<select>
<option>1</option>
</select>
<br />
<br />
<br />
<br />
<select>
<option>2</option>
</select>
<br />
<br />
<br />
<br />
<select>
<option>3</option>
</select>
<br />
<br />
<br />
<br />
<select>
<option>4</option>
</select>
</p>
<p>
<br />
<br />
<br />
</p>
</body>
</html>

 

看下2处关键代码...

收获园豆:50
三桂 | 老鸟四级 |园豆:3565 | 2010-11-25 09:43
这还不详细呢, 我上边都写啦。 模式窗体一分钟后退出。 哎。。。。。
ツ ↘ 懒 猫 | 园豆:0 (初学一级) | 2010-11-25 09:46
楼主看我上面的补充,小MM别急,不要哭.
三桂 | 园豆:3565 (老鸟四级) | 2010-11-25 10:26
其他回答(1)
0

settimeout

写代码的小2B | 园豆:4377 (老鸟四级) | 2010-11-25 09:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册