JavaScript如何判断一个弹出窗口是否关闭? if(newWindow){//存在}else{//不存在} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 请相信我在提问题之前是先找了baidu和google了的,我不是想在本窗口判断,而是在其他窗口判断。 A弹出了B,然后A打开了C在C里可以用window.dialogArguments.newWindow来判断.但newWindow在A里是全局变量才可以 用了这个方法试了一下,但是window.dialogArguments在ff和ie7里面好像都报错了....... 窗口打开或关闭时执行函数onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';" 加到<body>里,然后判断var cook=document.cookie.indexOf("windowOpen=")如果cook为空则窗口打开,如果cook为yes则窗口关闭 窗口打开或关闭时执行函数 onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';" 加到<body>里, 然后判断var cook=document.cookie.indexOf("windowOpen=") 如果cook为空则窗口打开,如果cook为yes则窗口关闭 在任何页面都可以做这样的决断了 谢谢 wang521gang ,这方法确实可行!!另外一个问题,麻烦也看看:http://topic.csdn.net/u/20080716/17/16f83ebf-18bf-4187-a859-b68b5fe0611a.html 有人已经解决了不过我也把我的代码贴上来吧 a.html:<HTML> <HEAD> <TITLE>a.htm</TITLE> <script> var obj; function init() { obj = window.open("b.html"); document.getElementById("ahref").href = "c.html?newWindow="+obj.closed; } </script> </HEAD> <BODY onload="init()"> I am a.htm! <a id="ahref" href="c.html">c.html</a> </BODY></HTML> c.html:<HTML> <HEAD> <TITLE>c.html </TITLE> <script> function test() { var flag = GetArgsFromHrefs(location.search,"newWindow"); if(flag) { alert("b.html is closed"); } else { alert("b.html is still open"); } } function GetArgsFromHrefs(sHref, sArgName) { var retval = new Array(); var args = sHref.split("?"); if(args[0] == sHref) /*参数为空*/ { return retval; /*无需做任何处理*/ } var str = args[1]; args = str.split("&"); for(var i = 0; i < args.length; i ++) { str = args[i]; var arg = str.split("="); if(arg.length <= 1) continue; if(arg[0] == sArgName) retval[retval.length] = arg[1]; } return retval; } </script> </HEAD> <BODY> Hello,I am c.html <input type="button" value="click" onclick="test()"/> </BODY></HTML>b.html就不贴了,不重要.但是,只能判断在C界面判断一次如果b.html关了之后就无法判断了.呵呵...还是wang521gang兄弟的方法好.呵呵... 不过cook < 0 表示窗口未打开吧还有,onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';" 这个放在哪个界面执行,是b还是c?wang521gang,现身解释一下 昨天偶然看见的,有请赞助一下判断ie6关闭还是刷新,但我没有测试。<script>window.onbeforeunload = function(){ var n = window.event.screenX - window.screenLeft; var b = n > document.documentElement.scrollWidth-20; if(b && window.event.clientY < 0 | | window.event.altKey){ alert("关闭"); //关闭的代码 } else{ alert("刷新"); //刷新的代码 } } </script> 求高手 帮忙解决一个js的难题 这段jquery入门代码,书上的,不能运行,新手求救 图片放大缩小时会微微抖动几下,怎么解决? 一个html与js的用法 javascript如何访问子ul标签 求高手,关于网页返回超时的问题,寻求解决方法,架构之伤 求求高手赶快来解决,能逼疯~~~!!在线等啊~~ Table中一个简单但却奇怪的问题?大家进来帮看看…… 一个关于二级菜单的脚本问题 请问TextRange对象是什么来的?? javascript判断文本框输入的是不是邮箱格式? firefox下onblur="this.focus();"的问题。
请相信我在提问题之前是先找了baidu和google了的,
我不是想在本窗口判断,而是在其他窗口判断。
在C里可以用window.dialogArguments.newWindow来判断.
但newWindow在A里是全局变量才可以
用了这个方法试了一下,但是window.dialogArguments在ff和ie7里面好像都报错了.......
onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';"
加到<body>里,
然后判断var cook=document.cookie.indexOf("windowOpen=")
如果cook为空则窗口打开,如果cook为yes则窗口关闭
onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';"
加到<body>里,
然后判断var cook=document.cookie.indexOf("windowOpen=")
如果cook为空则窗口打开,如果cook为yes则窗口关闭 在任何页面都可以做这样的决断了
谢谢 wang521gang ,这方法确实可行!!另外一个问题,麻烦也看看:
http://topic.csdn.net/u/20080716/17/16f83ebf-18bf-4187-a859-b68b5fe0611a.html
不过我也把我的代码贴上来吧 a.html:
<HTML>
<HEAD>
<TITLE>a.htm</TITLE>
<script>
var obj;
function init() {
obj = window.open("b.html");
document.getElementById("ahref").href = "c.html?newWindow="+obj.closed;
}
</script>
</HEAD>
<BODY onload="init()">
I am a.htm!
<a id="ahref" href="c.html">c.html</a>
</BODY>
</HTML> c.html:<HTML>
<HEAD>
<TITLE>c.html </TITLE>
<script>
function test() {
var flag = GetArgsFromHrefs(location.search,"newWindow");
if(flag) {
alert("b.html is closed");
} else {
alert("b.html is still open");
}
}
function GetArgsFromHrefs(sHref, sArgName) {
var retval = new Array();
var args = sHref.split("?");
if(args[0] == sHref) /*参数为空*/
{
return retval; /*无需做任何处理*/
}
var str = args[1];
args = str.split("&");
for(var i = 0; i < args.length; i ++) {
str = args[i];
var arg = str.split("=");
if(arg.length <= 1) continue;
if(arg[0] == sArgName) retval[retval.length] = arg[1];
}
return retval;
}
</script>
</HEAD>
<BODY>
Hello,I am c.html
<input type="button" value="click" onclick="test()"/>
</BODY>
</HTML>
b.html就不贴了,不重要.
但是,只能判断在C界面判断一次
如果b.html关了之后就无法判断了.
呵呵...
还是wang521gang兄弟的方法好.
呵呵...
不过cook < 0 表示窗口未打开吧
还有,onUnload="document.cookie='windowOpen=';" onLoad="document.cookie='windowOpen=yes';"
这个放在哪个界面执行,是b还是c?
wang521gang,现身解释一下
判断ie6关闭还是刷新,但我没有测试。<script>
window.onbeforeunload = function(){
var n = window.event.screenX - window.screenLeft;
var b = n > document.documentElement.scrollWidth-20;
if(b && window.event.clientY < 0 | | window.event.altKey){
alert("关闭");
//关闭的代码
}
else{
alert("刷新");
//刷新的代码
}
}
</script>