February 19, 2000 - Window Launching | WebReference

February 19, 2000 - Window Launching

Yehuda Shiran February 19, 2000
Window Launching
Tips: February 2000

Yehuda Shiran, Ph.D.
Doc JavaScript

The window.open() method opens a new browser window. Its general syntax is:

window.open(windowURL, windowName, windowFeatures);

In a standard script (not an event handler) the window specification is not necessary:

open(windowURL, windowName, windowFeatures);

windowURL is a string specifying the URL to open in the new window. If you specify an empty string, the method opens an empty window with no initial document.

windowName is a string specifying the window name to use in a TARGET attribute to load a page or a form response.

windowFeatures is a string containing a comma-separated list determining whether or not to create various standard window features. These options are described here.

A new browser window is almost useless if you cannot reference it in the original window's scripts. Since the method returns a reference to the new window, you should normally assign it to a variable:

var remote = open(windowURL, windowName, windowFeatures);

It's also very convenient to assign a name to the original window, so you can use the TARGET attribute in the new window to target the original one. The following function opens a new window, names the original window, and returns a reference to the new window's window object:

function launch(newURL, newName, newFeatures, orgName) {
  var remote = open(newURL, newName, newFeatures);
  if (remote.opener == null) // if something went wrong
    remote.opener = window;
  remote.opener.name = orgName;
  return remote;

Note that the window object of any new window created with the window.open() method, features an opener property, which reflects the window object of the opener window.

Learn more about window spawning in Column 7, Window Spawning and Remotes.