Alex Rivera | Logout

Programmatically open new pages on Tabs

Asked 2009-01-09T09:15:49.257
113

I'm trying to "force" Safari or IE7 to open a new page using a new tab.

Programmatically I mean something like:

window.open('page.html','newtaborsomething');
Edit
Report

2 Answers

49

Those of you trying to use the following:

window.open('page.html', '_newtab');

should really look at the window.open method.

All you are doing is telling the browser to open a new window NAMED "_newtab" and load page.html into it. Every new page you load will load into that window. However, if a user has their browser set to open new pages in new tabs instead of new windows, it will open a tab. Regardless, it's using the same name for the window or tab.

If you want different pages to open in different windows or tabs you will have to change the NAME of the new window/tab to something different such as:

window.open('page2.html', '_newtab2');

Of course the name for the new window/tab could be any name like page1, page2, page3, etc. instead of _newtab2.

answered 2011-02-24T21:48:56.410
12

It's up to the user whether they want to use new tabs or new windows, it isn't the business of the developer to modify this behaviour. I do not think you can do it.

Pet peeve of mine - I hate it when sites force me to open in a new window / tab - I am quite capable of making that decision for myself. Particularly when they do it in javascript - that is really unhelpful.

answered 2009-01-09T09:20:37.890

Your Answer