黑魂3法兰老狼大碎片:(高分求教)js脚本如何判断判断一个弹窗页面是否打开?

来源:百度文库 编辑:高校问答 时间:2024/05/07 13:26:44
有两个网页分别是主页A.htm和由JS的IF语句控制的弹窗页B.htm。
我现在已经打开了一个页面A.htm,那么:
如果B.htm已经打开了,无论怎样刷新A.htm,都不再打开B.htm;
如果没有打开B.htm或关闭了B.htm,则刷新A又将重新弹出B.htm。
有没有不用COOKIE的方法?

最简单就是用window.open啊
window.open('abc.htm','win1','top=0,left=200,width=320,height=400,scrollbars=no,resizable=yes,center:yes');
//三个参数分别为新窗口的文件路径(也可以是部分script函数);第二个参数是窗口名;第三个参数是窗口状态

只要第二个参数(窗口名)有写, 就只会弹出一个窗口。

A.htm中:
<SCRIPT LANGUAGE="JavaScript">
function myLoad(){
var cook = document.cookie.indexOf("windowOpen=");
if(cook <0){
productList=window.open("B.htm");
}
}
</SCRIPT>
<body onload="myLoad();">

B.htm中:
<script language="JavaScript">
function close1(){
document.cookie="windowOpen=";
}
function open1(){
document.cookie="windowOpen=isOpened";
}
</script>
<body onUnload="close1()" onLoad="open1()">

最简单就是用window.open啊
window.open('abc.htm','win1','top=0,left=200,width=320,height=400,scrollbars=no,resizable=yes,center:yes');
//三个参数分别为新窗口的文件路径(也可以是部分script函数);第二个参数是窗口名;第三个参数是窗口状态

只要第二个参数(窗口名)有写, 就只会弹出一个窗口。

<SCRIPT LANGUAGE="JavaScript">
function myLoad(){
var cook = document.cookie.indexOf("windowOpen=");
if(cook <0){
productList=window.open("B.htm");
}
}
</SCRIPT>
<body onload="myLoad();">

B.htm中:
<script language="JavaScript">
function close1(){
document.cookie="windowOpen=";
}
function open1(){
document.cookie="windowOpen=isOpened";
}
</script>
<body onUnload="close1()" onLoad="open1()">

a.htm中用js打开一个新窗口b.htm,可以返回一个句柄,如果这个句柄不等于null,则表示新窗口打开了。

呵呵,这么简单的问题用这么高分,只怕你不会给。
JS支持cookies的嘛,B.htm的body装载两个函数,一个载入执行,一个关闭执行,两个函数分别控制写和清cookies,然后A.htm检测cookies,就可以作出是否打开B.htm的动作了嘛。