2009-10-30 6 views
1

Я хотел бы открыть документ после загрузки страницы ASP.NET в отдельном окне. Я хотел бы сделать это, когда документ не будет заблокирован всплывающим окном. Я попробовал, и я получаю приглашение, чтобы спросить, хочу ли я разрешить всплывающее окно. Это лучший способ сделать это с помощью таймера или есть лучший способ в lifecylce?Открыть документ после загрузки страницы

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

+0

Есть код? Когда вы загружаете документ? Как загрузить документ? –

ответ

1

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

Лучшим решением является ссылка на вашу страницу, чтобы открыть этот документ в новом окне. Блокировщики всплывающих окон не предотвращают ссылки, нацеленные на новое окно.

+0

Понял, но мне все же нужно попытаться что-то придумать. – Matt

+0

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

+0

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

0

Вы можете использовать событие JavaScript для загрузки.

function open_page() 
{ 
    popupWin = window.open('windowURL','windowName', ' resizable,dependent,status,width=500,height=400,left=0,top=0') 
} 

Тогда имеют следующий тег BODY

<body onload="open_page()"> 

Однако это не получите вокруг блокировки всплывающих окон выпуска.

0

Как пользователи получают доступ к вашей странице? Вы можете разместить всплывающий JavaScript в ссылке, которая выводит пользователей на вашу страницу.

1

Я использую

function openpage(page) { 
    if (document.getElementById('hf_open').value == 1) { 
     openChild(page, 'nueva'); 
     document.getElementById('hf_open').value = 0; 
    } 
} 

и в теле onload ="openpage('whateverpage.aspx');" и в случае ASP.NET я устанавливаю, если я хочу, чтобы всплывающее окно, чтобы быть открытым или нет конкретное время, установив hf_open 1, если всплывающее окно должен быть открыт в то время.

В Internet Explorer 7 с блокировщиком всплывающих окон: включите проверку - он работает.

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