15

Just wanted to know if it is possible to create a hidden window using javascript?

user475685
  • 8,041
  • 7
  • 26
  • 24

3 Answers3

14

You can create an iframe

var element = document.createElement("iframe"); 
element.setAttribute('id', 'myframe');
document.body.appendChild(element);

You can hide an iframe by setting its width and height to zero or by setting its visibility to hidden in the stylesheet.

Andrey
  • 5,906
  • 4
  • 24
  • 30
  • 2
    Actually `element.style.display = "none";` is the ideal way to have it hidden as far as I know. – Shadow The GPT Wizard Mar 03 '11 at 12:38
  • I've read on someone's blog that iframe may not work properly if we set display to none, but it were not mentioned in what case exactly. Maybe you're right :) – Andrey Mar 03 '11 at 12:55
10

You can also create a new window visible only in taskbar with this workaround:

window.open(path.html,'_blank', 'toolbar=no,status=no,menubar=no,scrollbars=no,resizable=no,left=10000, top=10000, width=10, height=10, visible=none', ''); 

that open a window in a position not visible by user. I have used this trick different times.

Tonino
  • 1,137
  • 10
  • 25
0

Under IE 9+ you can create a window off-screen:

var options = "left=" + (screen.width*2) + ",top=0";
var myWin = window.open(url, name, options);
// Hide the window - IE only
myWin.blur();
// Show the window - IE only
myWin.focus();

screen.width is your monitor width. Using "*2" allows for users with dual monitors.

This does not work under Chrome.