2015-08-10 4 views
0

Я пробовал несколько вещей, но каждый раз, когда Chrome (и другие?) Обнаруживает всплывающее окно ... можно обойти его?Открытая ссылка в новой вкладке после X секунд без всплытия

  window.open(
      '/test.php', 
      '_blank' 
      ); 
      }, 2000); 
+0

Как автор сайта, нет, это не должно быть возможным. Как правило, новые вкладки/окна можно открывать только при обработке определенных пользовательских событий, таких как щелчки кнопки/ссылки. Пользователь может разрешить всплывающее или отключить блокировку всплывающих окон, но у вас нет контроля над тем, выбирают ли они. –

ответ

0

Не могли бы вы попросить код?

//1000 = 1 second 
setTimeout(function() { 
    window.open('url here', '_blank); 
}, 1000); 
+0

Thx but pop up :( –

+0

@BaraqueObahamas, я обновил ответ, чтобы открыть его в новой вкладке –

+0

Тоже: -/Я думаю, что сделать почти невозможно –

0

Вы должны открыть окно с помощью JavaScript, а затем установить setTimeout в течение двух секунд, что будет ждать переменной, чтобы установить.

Новое окно должно установить переменную в родительском окне, давайте скажем true.

После запуска setTimeout он проверяет, является ли переменная истиной, а если нет, то открывается ссылка. Если это так, то ничего не делать

var didItOpen = false; 
window.open('page.html'); 
setTimeout(function() { if (!didItOpen) location.href = 'page.html'; }, 2000); 
+0

Thx. Я пробовал, но он открывал непосредственно страницу, и первый страница перенаправляется через 2 сек. –

+0

@BaraqueObahamas это будет одним из способов открыть страницу, если всплывающее окно не удалось, но, как упоминает другой комментарий, нет возможности обойти блокировщик всплывающих окон браузера с помощью javascript простым способом –

+0

Oh хорошо, я вижу! Спасибо :) –

Смежные вопросы