刷新node-webkit中的外部浏览器窗口

时间:2014-08-25 16:24:22

标签: javascript node.js node-webkit

我正在尝试在浏览器中加载文件,然后在触发事件时刷新它。我正在使用节点打开模块:

var open = require('open');
var url = 'http://www.stackoverflow.com';
var myWindow = open(url); //returns a child process

myWindow.on('refresh', function() {
    open(url);
});

// stuff...

myWindow.emit('refresh');

open()方法返回一个子进程,所以我将一个事件监听器附加到它,当refresh事件被触发时触发。但是(如您所见)当refresh被触发时会打开一个新窗口。如何跟踪原始窗口并刷新它?

1 个答案:

答案 0 :(得分:0)

如果你真的是指外部浏览器,那么我不确定,但是如果你在node-wekbit中使用window.open,你可以这样做:

var url = 'http://www.stackoverflow.com';
var myWindow = open(url);  // returns a Window object

. . .

myWindow.window.location.reload();

这将打开另一个带有给定url的node-webkit窗口,但要注意使用node-webkit和使用标准浏览器一样不安全,因为并非所有的安全保护都是到位。

如果您正在谈论外部浏览器,那么我不确定是否有简单的解决方案。我不认为您可以发送子进程以重新加载浏览器。