我有一个父浏览器窗口P。点击一个按钮会打开一个新的浏览器窗口WIN-A。再次按下相同的按钮,应该读取WIN-A窗口的标题并打开WIN-B。
如何使用Javascript实现这一点?
提前感谢。
我有一个父浏览器窗口P。点击一个按钮会打开一个新的浏览器窗口WIN-A。再次按下相同的按钮,应该读取WIN-A窗口的标题并打开WIN-B。
如何使用Javascript实现这一点?
提前感谢。
给定:
var myWindow = open("foo.bar");
旧方法:更改窗口对象的name
属性:
myWindow.name = "...";
// in foo.bar:
setInterval(someFunctionToCheckForChangesInName, 100);
HTML5方法:调用窗口对象的postMessage
方法:
myWindow.postMessage("...", "*");
// in foo.bar:
(window.addEventListener || window.attachEvent)(
(window.attachEvent && "on" || "") + "message", function (evt) {
var data = evt.data; // this is the data sent to the window
// do stuff with data
},
false);
最近刚刚有一个类似的问题:
Stack Overflow问题:使用window.open()创建弹出窗口,最快的传递数据方法是什么?
以此为基础(假设父页面和WIN-A在同一域名下):
// Put outside click handler
var winA = null;
// Put inside click handler
if(!winA){
// Store the return of the `open` command in a variable
var winA = window.open('http://www.mydomain.com/page1');
} else {
var title = winA.document.title;
// Do something with title
var winB = window.open('http://www.mydomain.com/page2');
}
window
的属性,请不要忘记使用.call(the_object_that_is_supposed_to_be_the_parent, args)
。 - Eli Grey