javascript 打开新窗口,关闭父窗口

我想在打开一个页面的时候自动将页面变成模拟态窗口。因此想到的方法是,在打开该页面的时候自动打开该页面的模拟态窗口(showmodaldialog)而后自动关闭自己。但是有几个问题:
1,由于是自动打开,窗口会被拦截(如果是点击链接打开的话不会被拦截,不太清楚是什么原因);
2,本窗口不会关闭自己。
我的代码如下:
<!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">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<head>
<title></title>
<base target="_self" />
<script type="text/javascript" language="JavaScript">

function openchild()
{
parent.window.opener=null;
parent.window.close();
var ch=window.showModalDialog("./log.html","","dialogWidth:1024px;dialogHeight:768px;help:no;");

}

</script>
</head>

<body onload="openchild()">

</body>
</html>
请高手帮修改一下,能不能做到自动打开新窗口而不被拦截,同时还能自动关闭父窗口。
当然也可以换一种方法,只要能在打开一个页面时自动将页面变成模拟态窗口即可。

呵呵,浏览器角度来讲这个功能是无法实现的,不过我喜欢动脑的人!

父窗口在关闭以前浏览器会返回一个任务BOLR值,也就是True Or False!

在如果父窗口在关闭的同时检查出自窗口没有结束任务的话,当Window.Close();时返回的是False,也就是不成立关闭父窗口的条件!

所以,这个功能从根本意义上讲是无法实现的!

不过有很多方法都可以模拟你说的效果,至于什么方法嘛,可以参考下高手们所

开发的B\S系统,里面应该了很多你想要的效果。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-11-28
<body onload="window.parent.close();">
试一试把这一句加在log.html中,新窗口载完,父窗口关闭

或者你在openchild() 函数中去掉parent.window.close();
函数最后加一句window.close();

试一下,因为你现在的函数,parent.window是不行的,顺序反了
相似回答
大家正在搜