通过Javascript控制浏览器窗口

时间:2010-10-14 08:01:52

标签: javascript browser

我有一个在其他窗口/标签中启动网址的网络应用。我想检查窗口/标签是否存在;如果没有,我想创建它,否则我想在第一个位置选择它。 我用:

wf=window.open(address, web_form_target, 'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=640,height=450');
if(wf!=null)
    wf.focus();

但这只是第一次(在IE中,而不是在Firefox中);如果我在窗口中创建一个新选项卡,当我调用window.open()时没有任何反应;如果我关闭窗口它重新创建它但保持图标化... 有没有办法可以效仿?

提前致谢 问候, 角

2 个答案:

答案 0 :(得分:2)

这里有一些我用过的代码,据我所知仍然可以使用。请注意,oWindow具有全局范围,并且我将其作为字符串传递给open的第二个参数,而不是作为对象本身。然后,在尝试再次打开之前测试它是否已关闭...如果它已经打开,那么我只是给它焦点:

var oWindow;

function openWindow(p_strURL) {

    if(!oWindow || oWindow.closed) {
        oWindow = window.open(p_strURL, "oWindow", "status, scrollbars, resizable, width=800, height=500");
        if(!oWindow.opener) {
            oWindow.opener    = window;
        }
    }
    else {
        oWindow.location.href = p_strURL;
        oWindow.focus();
    }
}

希望它可以帮助您找到解决方案,

凯文

答案 1 :(得分:0)

web_form_target是窗口名称。

if (wf.name !==  web_form_target) {
   // create it
}