我有一个窗口,我从我的javascript代码打开:
window.open('/Item/Article/' + item.ItemID(), 'ItemArticle',
'resizable=yes,scrollbars=yes,height=' + res.height + ',width=' + res.width + ',
left=0', null);
当满足某个条件时,我想更改该窗口的html地址,即将其重新加载到新位置。
如何设置我手动打开的窗口的ID或锚点,以便我可以使用此ID重新加载具有新位置的窗口。
答案 0 :(得分:1)
您可以1)引用您的窗口,2)使用window.open()
时说明名称。
var windowObjectReference = window.open(strUrl, strWindowName[, strWindowFeatures]);
您可以通过选择相同的窗口名称(第二个参数)来修改窗口。
var myWindow = window.open("http://google.com","myWindow");
// opens SO in the same window
window.open("http://stackoverflow.com","myWindow");
// the following will only work if it's the same domain, else subject to SOP -
// so in the case of initially opening it with google, this won't work!
myWindow.document.location.href = "/example/test.html";
// closes your window
myWindow.close();
因此,在您的情况下,以下行应该有效:
window.open('newURL','ItemArticle'/* optionally: ,'Parameters'*/);
答案 1 :(得分:0)
如果要从窗口A更新Window B的URL,可以执行window.open
并提供与第二个参数相同的名称。这将简单地“重新打开”已经打开的窗口,并将其重定向到新的URL。
window.open('http://www.google.com','googleWindow');
window.open('http://www.stackoverflow.com','googleWindow');
上面的代码将在Google上打开一个窗口,并立即将其重定向到Stack Overflow
不确定是否会自动聚焦窗口!
答案 2 :(得分:0)
您可以使用以下方式访问打开子窗口的父窗口中的功能。
window.opener.ParentWindows(); //Here ParentWindows() is userdefined function coded by me in parent windo
W
答案 3 :(得分:0)
您可以将窗口存储在变量中,然后像控制窗口对象一样控制它。
以下代码将打开一个新窗口,4秒后重新加载到新位置。
myWindow=window.open('','','width=200,height=100');
myWindow.focus();
setTimeout(function(){
myWindow.document.location = "http://www.google.com";
}, 4000);