2011-12-31 5 views
4

У меня есть мой веб-браузер (Firefox 10 и Chrome 16), чтобы при открытии новой страницы он открывается в том же окне на новой вкладке. Когда я пишу локальный файл так:Открытие новой страницы: Новое окно против новой вкладки

<html><body><input type="button" onclick="window.open();"/></body></html> 

и доступ к этому местоположению с помощью веб-браузера и нажмите на кнопку, то откроется новая страница в том же окне в новой вкладке. Это ожидается.

Однако, когда я использую локальный веб-сервер (Ruby + WEBrick) и динамически генерировать то же самое, что и выше, и доступ к этому местоположению localhost:3000, и нажмите на кнопку, то откроется новая страница в новом окне. Почему это ведет себя иначе, и как я могу исправить код, чтобы он открыл в том же окне на новой вкладке?

Если я вместо этого сделать

<html><body><input type="button" onclick="window.open("", "_self");"/></body></html> 

тогда откроется новая страница в той же вкладке, т.е. переписывает текущую страницу.

+0

Непонятно, как вы создаете страницу. Я попытался напрямую отправить страницу с локального веб-сервера (mongoose), и он работает как ожидается, чтобы открыть окно на новой вкладке – rogerz

+0

@rogerz. Я уточню, если что-то заметлю. Спасибо, что пытались. – sawa

ответ

2

В общем случае если вы предоставляете размеры с window.open, вы увидите взаперти новое окно. Если вы этого не сделаете, вы получите новую вкладку.

Я бы предположил, что указанный _self делает то же самое.