2009-11-24 8 views
5

Я пытаюсь открыть определенную страницу с моей страницы по умолчанию. Весь код есть в странице по умолчанию является:window.open с блокировщиком всплывающих окон

<script type="text/javascript"> 
     window.open("StartPage.aspx", "", "fullscreen=yes"); 
</script> 

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

Есть ли способ сделать это? Thanks

+3

Если бы вы могли обойти блокировку всплывающих окон, не вы Думаете, все рекламные спам будет делать это? – skaffman

+1

Если вы можете обойти блокировщик всплывающих окон, это не будет блокировщик всплывающих окон. – NickFitz

ответ

1

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

13

adamantium - правый. блокировщик всплывающих окон был бы бесполезен, если бы его можно было переопределить кодом, вызывающим всплывающее окно. самое лучшее, что вы можете сделать, это:

<script type="text/javascript"> 
    var myPopup = window.open("StartPage.aspx", "", "fullscreen=yes"); 
    if(!myPopup) 
     alert('a popup was blocked. please make an exception for this site in your popup blocker and try again'); 
</script> 
+0

да хороший трек, но как переопределить без предупреждения –

+0

Не работает в Chromium для меня. Есть идеи? – lippo

3

Как и другие, вы просто не можете. Браузер блокирует это поведение. Другим вариантом было бы не использовать window.open, а вместо этого использовать компонент javascript, который может дать вам такое же поведение.

+0

Кажется, что он не хочет «всплывать», а скорее открывает страницу в полноэкранном режиме. – awe

+0

Правильно, но это будет невозможно, поэтому я дал альтернативное решение. – Bob

1

Вы можете открыть всплывающее окно, используя только событие onclick. Вы можете попробовать отправить форму с target="_blank" и установить действие на ваш url, но forefox заблокировал это, google chrome not.

+0

Петр М. прав! это ТОЛЬКО вещь, которая будет работать! Неудивительно, что я все время блокировал свои всплывающие окна, и я их вызвал через событие onmousedown, который знал бы, что будет вести себя по-другому! Спасибо, Петр! – Hank

0

Я не думаю, что это невозможно, каждый день я вижу потокового страницы открытия всплывающих окон все время и шахта блокируется, так что должен быть способ обойти это

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