Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.12.2008, 14:41
azazello
 
Сообщений: n/a

Как можно обойти блокировку всплывающих окон?
Здравствуйте!

Есть главное окно в котором представлена некая древовидная структура объектов, у любого объекта может быть схема, которая при необходимости должна открываться в другом окне(я открываю функцией window.open, потому что она возвращает ссылку на новое окно). При чем таких открытых схем может быть достаточно много. Из схемы можно перейти обратно в дерево и наоборот. Т.е. главное и дочерние окна должны взаимодействовать друг с другом(например из дочернего передавать данные в функцию родительского окна). В главном окне хранится массив ссылок на дочерние. А дочерние окна получают доступ к родителю через свойство window.opener Окна необходимы, потому что человек который работает со схемами может сидеть за двумя мониторами, и плюс он должен иметь возможность сравнивать схемы.

Но есть одна проблема, при определенных настройках браузера клиента, всплывающие окна блокируются. Если ли какой-нибудь способ открыть окно так, чтобы оно при максимальных настройках безопасности браузера клиента не заблокировалось. И при этом сохранилась возможность взаимодействия между окнами. Если кто то поможет буду очень признателен! Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 17.12.2008, 14:49
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

var w = window.open(...);
if (!w) {
    alert('Разрешите всплывающие окна для этого сайта.');
}
Ответить с цитированием
  #3 (permalink)  
Старый 17.12.2008, 15:12
azazello
 
Сообщений: n/a

Сообщение от Kolyaj Посмотреть сообщение
var w = window.open(...);
if (!w) {
    alert('Разрешите всплывающие окна для этого сайта.');
}

Хороший способ, тоже рассматривал его, но у нас с системой будут работать пользователи, для которых отключить блокировку окон непосильная задача) А самое неприятное что это блокировка может быть на уровне корпоративной безопасности, и чтобы отключить её, потребуется много времени и нервов
Ответить с цитированием
  #4 (permalink)  
Старый 17.12.2008, 15:51
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

ну тогда вам стоит запастись временем и нервами, так другого способа отключить блокировку нет.
Ответить с цитированием
  #5 (permalink)  
Старый 17.12.2008, 15:57
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

azazello, если бы можно было отключить блокировку всплывающих окон, странная это была бы блокировка. Вам не кажется?
Ответить с цитированием
  #6 (permalink)  
Старый 17.12.2008, 18:19
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

а вообще какой-ниубдь опыт есть у кого-нить по поводу всплывающих окон?
я вроде слышал, что они могут блокироватся-не блокироватся в зависимсти от разных условий.
например, если оно всплывает на событие перехода по ссылке, то блокается
но, точно не проверял
была ситуация, когда заказчик очень просил, чтобы окно приложения открывалась отедльно, и было определенных размеров
решил как-то так
<form action="edit.php" method="post" enctype="multipart/form-data" target="load" onSubmit="pre_load();return true;">
	<input type="file" name="image" />
	<input type="submit" value="Загрузить фото" onClick="pre_load();return true;">
</form>

function pre_load()
	{
	edit_window=window.open('edit.htm','load','width=740,height=580,scrollbars=1');
	}

возможно что-то наупутал, так как востанавливал частично по памяти
но блокировка всплывающих окон не срабатывала у меня, по крайней мере(в опере стоит, а в отсальных, не сильно в курсе)
все было хорошо, пока у одного из тестеров не оказался касперыч.
его мы обойти так и не смогли.
у окго есть еще опыт?
Ответить с цитированием
  #7 (permalink)  
Старый 03.05.2009, 19:03
Новичок на форуме
Отправить личное сообщение для b812 Посмотреть профиль Найти все сообщения от b812
 
Регистрация: 03.05.2009
Сообщений: 1

Тоже столкнулся с этой проблемой. Похоже, что, если в скрипте есть назначение функции на onLoad (я проверял, по крайней мере, с Image.onLoad и window.onLoad), то всплывающее окно блокируется, а если не вешать такого обработчика, то нет. Проверял в ie6.0.2900... и FF 3.0.10.
Ответить с цитированием
  #8 (permalink)  
Старый 03.05.2009, 22:15
Аватар для blase
Новичок на форуме
Отправить личное сообщение для blase Посмотреть профиль Найти все сообщения от blase
 
Регистрация: 03.05.2009
Сообщений: 9

Сообщение от Kolyaj Посмотреть сообщение
var w = window.open(...);
if (!w) {
    alert('Разрешите всплывающие окна для этого сайта.');
}
отличная идея! спсибо!
Ответить с цитированием
  #9 (permalink)  
Старый 05.08.2010, 16:54
Новичок на форуме
Отправить личное сообщение для Kirrr Посмотреть профиль Найти все сообщения от Kirrr
 
Регистрация: 05.08.2010
Сообщений: 3

Сообщение от Kolyaj Посмотреть сообщение
var w = window.open(...);
if (!w) {
    alert('Разрешите всплывающие окна для этого сайта.');
}
В опере (по крайней мере в последней версии) такая проверка не катит, там даже если окно заблокированно переменная w будет равна [object window].
Может кто знает как еще можно проверить, не заблокировано ли окно?
Ответить с цитированием
  #10 (permalink)  
Старый 08.08.2010, 17:27
Аватар для KOLANICH
Профессор
Отправить личное сообщение для KOLANICH Посмотреть профиль Найти все сообщения от KOLANICH
 
Регистрация: 22.11.2008
Сообщений: 277

очень просто
повесть попап на клик мыши по элементу, на котором юзер обязательно кликнет
браузер разрешит
удачи
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Может кто подсказать как можно сделать submit из левого фрейма в правый maxander Internet Explorer 1 28.11.2008 10:15
Как можно прикрепить звук к символу? Дима1234 Общие вопросы Javascript 1 16.10.2008 17:27
как можно дебажить JavaScript кроме Firebug? subaru Общие вопросы Javascript 4 02.07.2008 11:16