Откройте две новые вкладки, используя Javascript - PullRequest
1 голос
/ 13 апреля 2010

У меня такая ситуация:

Есть страница входа с формой входа (действие формы - $ _SERVER ['PHP_SELF']). При входе пользователя в систему он проверит, к какому приложению пользователь может получить доступ, и откроет все приложения, доступные для этого пользователя, в новой вкладке. Если пользователь может получить доступ к приложению (например) «Документы» и «Сайты», оно откроет 2 вкладки.

Я открываю новую вкладку, используя window.open('app1.html','_newhtml');, некоторые люди говорят, что она работает только в Firefox. Это нормально, ничего страшного для меня.

Проблема в том, что открывается только 1 вкладка, хотя я пишу ее 2 раза

window.open('app1.html','_newhtml');
window.open('app2.html','_newhtml');

Как открыть 2 вкладки? Есть ли какие-нибудь хаки со стороны сервера или со стороны клиента?

Ответы [ 2 ]

5 голосов
/ 13 апреля 2010

Проблема в том, что вы идентифицируете окно с тем же идентификатором. Вы используете пользовательский здесь, но вы также можете предоставить зарезервированные браузером (_self, _top и _blank)

Попробуйте это

window.open('app1.html','_newhtml');
window.open('app2.html','_newhtml2');

или просто используйте _blank, который не гарантирует новую вкладку, просто новое окно, если браузер его поддерживает.

1 голос
/ 13 апреля 2010

Использование '_blank' в качестве цели всегда будет открываться в новом представлении браузера. Это может быть новая вкладка или новое окно, в зависимости от браузера и настроек пользователя (некоторые браузеры не поддерживают вкладки и т. Д.).

Другой вариант заключается в использовании двух отдельных именованных идентификаторов (например, '_newhtml' и '_newhtml2'), которые затем позволят вам открыть другие страницы в этих же двух окнах позже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...