window.open()後如何取得最上層父視窗?
大家好!想請問一個javascript window.open()的問題, 假如我有一個視窗A, A視窗中用window.open()開了一個B視窗, 在B視窗中又用window.open()開了一個C視窗, 如此可以一直循環開下去, 請問我在最後一個子視窗中要如果取得A視窗?
另外在A視窗中要如何一次關掉所有的子視窗?
謝謝! [b]回復 [url=http://jsgears.com/redirect.php?goto=findpost&pid=2894&ptid=1645]1#[/url] [i]mybible7[/i] [/b]
給你一段程式,可以自己玩玩看:[code]
<button id="b1">Open</button>
<button id="b2">has Parent?</button>
<button id="b3">Close child</button>
<div id="d1"></div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript">
var child;
$(function () {
$("#b1").click(function () {
child = window.open(window.location.href.split("/").slice(-1)[0], "W" + parseInt(Math.random() * 1000), 10);
});
$("#b2").click(function () {
var op = window.opener;
if (op) {
while (op) {
if (op.name === "") {
op.name = "top window";
}
$("#d1").append("<div>" + op.name + "</div>");
op = op.opener;
}
} else {
$("#d1").append("<div>null</div>");
}
});
$("#b3").click(function () {
closeAllChild();
});
});
function closeAllChild() {
if (child) {
child.closeAllChild();
child.close();
}
};
[/code]
頁:
[1]