admin管理员组

文章数量:1430941

OK so I couldn't find an answer for this one, I am trying to open a window, execute a mand once it's loaded, and then modify it's DOM from the main window. Here's my sample code:

var window = window.open('empty.html',{
    "position": "center",
    "focus": true,
    "toolbar": false,
    "frame": true
  });
...
window.on("loaded",function() {
...

It doesn't fire. when I tried

var a_window = window.open('empty.html',{
  "position": "center",
  "focus": true,
  "toolbar": false,
  "frame": true
});
a_window = gui.Window.get(a_window);
...
a_window.on("loaded",function() {
...

but here it doesn't even open the window! (No I don't have a hide() function inside the callback) also, no error is thrown. Any help?

OK so I couldn't find an answer for this one, I am trying to open a window, execute a mand once it's loaded, and then modify it's DOM from the main window. Here's my sample code:

var window = window.open('empty.html',{
    "position": "center",
    "focus": true,
    "toolbar": false,
    "frame": true
  });
...
window.on("loaded",function() {
...

It doesn't fire. when I tried

var a_window = window.open('empty.html',{
  "position": "center",
  "focus": true,
  "toolbar": false,
  "frame": true
});
a_window = gui.Window.get(a_window);
...
a_window.on("loaded",function() {
...

but here it doesn't even open the window! (No I don't have a hide() function inside the callback) also, no error is thrown. Any help?

Share Improve this question asked Feb 1, 2014 at 7:39 WazzapsWazzaps 3805 silver badges12 bronze badges 0
Add a ment  | 

2 Answers 2

Reset to default 3

Try and see if this shouldn't do the trick, it did for me:

var a_window = window.open('empty.html',{
  "position": "center",
  "focus": true,
  "toolbar": false,
  "frame": true
});
onload = function() {
    alert('Help it\'s loaded!');
};

Just so you know, I think the onload triggers for every window, so remember to unset it when you don't need it:

onload = null;

You can also try this for the individual window:

a_window.onload = function() {
    alert('Help it\'s loaded!');
};

nw.Window.open callsback the third argument with the opened window. nw.Window.get takes the DOM window as an argument.

nw.Window.open('empty.html',{},win=>win.on('loaded', () =>someFunction(nw.Window.get(win.window))));

本文标签: javascriptNode webkit opening a new window and listening for onloadedStack Overflow