![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Братцы подскажите как на JS запретить закрытие окна при нажатии на крестик или Flt+F4. Ужо мочи нету... Босс требует...
Заранее зело благодарен!!! |
|||
|
||||
Alx |
|
||||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
врядли сработает! ед. вариант, как мне кажется:
Это сообщение отредактировал(а) Aliance - 2.11.2005, 04:12 |
||||
|
|||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Такой вариант неприемлем по двум причинам:
1. Это сработает и при релоаде страницы, а мне надо отловить именно закрытие. 2. На странице вводится текст и при обычной перезагрузке он просто потеряется... |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Зачем это могло понадобится...? Однозначный ответ: этого сделать нельзя! Даже если ИЕ будет тупить и выполнять такой код, другие браузеры и оболочки по ИЕ пропускать такое не будут. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Сам знаю, что нельзя... Но надеялся, что может быть можно... :-(
Правда мне только для ИЕ и нужно было... А требовалось это для того, что-бы нельзя было случайно закрыть окно и потерять введенный текст... |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Тогда событие onbeforeunload должно помочь. Появится диалог "действительно закрыть эту страницу?".
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
GoodBoy |
|
||||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
НЕТ!!!!!!! я об этом уже писал!!!
|
||||
|
|||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Событие будет вызыватся при закрытии окна, но остановить этот процесс ничем нельзя. Можно при закрытии скопировать все важнное в буффер обмена и сообщить, что возможно не все еще погибло...
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Sardar: Событие будет вызываться при закрытии окна, перезагрузке страницы и переходе на новую страницу!!! А мне нужно было ТОЛЬКО при закрытии!!!!
Тему можно считать закрытой... |
|||
|
||||
Royan |
|
|||
Dreamer ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 14.9.2002 Где: Лондон Репутация: 1 Всего: 15 |
Объясни босу - это нарушает политику безопасности Microsoft Internet Explorer, поэтому такая возможность не предусмотрена разработчиками IE. На том точка.
-------------------- Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Royan Босс уже проникся!!! :-))) Но с другой стороны - не удобно... В винде для своего приложения так сделать можно, а внутри ИЕ - низя...
|
|||
|
||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
ты понимаешь, сколько вирусов и спама бы за это цеплялось!
![]() |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
ALEXANDRO Я то
![]() |
|||
|
||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
GoodBoy
![]() |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
И все-таки я это сделал!!! :-)))))))
В таком варианте нажатие на крестик закрытия окна приводит к запросу на закрытие, а при нажатии Ctrl+R - запрос подавляется. |
|||
|
||||
Гость_Sardar |
|
|||
Unregistered |
Я об этом говорил постами выше. Событие onbeforeunload специально созданно для "предотвращения" потери данных. По моему у меня не получилось остановить закрытие, лень было в MSDN'e посмотреть.
Кстати теперь по моему и Gecko(Mozilla, Netscape...) поддерживает это событие. |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
2 Гость?? Sardar Эт понятно!!! Я и сам про onbeforeunload знал, но нужно было его заставить работать ТОЛЬКО при крестике!! :-))))))))
ЗЫ. А почему ты - гость?? :-))))))) |
|||
|
||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
GoodBoy
ну ты крут! ![]() |
|||
|
||||
Sardar |
|
||||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
GoodBoy
Ctrl+R это не выход...
Жизнь такая ![]() ALEXANDRO
Ну нравится же тебе флеймить!!! ![]() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||||
|
|||||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
Sardar
я сам не люблю флейм, но я ж почучуть, никому не мешая! к тому же это не очень далеко от темы! ![]() ![]() ![]() |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
2 Sardar
Понятно, что не выход!! :-)))))))) Я решил подавить запрос при перезагрузке страницы. |
|||
|
||||
Иль |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 544 Регистрация: 3.3.2005 Где: Москва Репутация: 2 Всего: 14 |
Елки, теперь понятно! Это сделано как встроенный стандартный компонент браузера типа confirm. Ну чтож, довольно деликатно и права пользователя не ущемлены и свой текст добавлять можно. Тем более приятно, что в Gecko это работает также.
-------------------- Ты виндусятник?... А я да. ![]() |
|||
|
||||
Fal'K° |
|
|||
Unregistered |
У меня не работает хоть крестиком, хоть ноликом, хоть ALT+F4
закрывается без возмущений ![]() |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Fal'K° однозначно либо JS отключен, либо руки не из того места. Код приведённый GoodBoy на предидущей странице должен работать.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Гость_12345 |
|
|||
Unregistered |
Sardar: из-под GreenBrowser событие onBeforeUnload игнорируется
|
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Естественно, оно поддерживается только в ИЕ.
|
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Он на своём особом движке? Точно не знаю, но ИЕ, Геко и Опера должны иметь onbeforeunload, KHTML и производные(Safari) не знаю...
Скорее всего под таким браузером просто нельзя отследить закрытие окна, либо какой свой, редкий не стандартный API. Вывод: забей. Вывод получше: пересмотри задачу, не могу представить себе ситуацию где бы это понадобилось. Фичи гугла, мол перед закрытием окна предупредить юзера, меня это больше раздражает, тем более что SessionSaver плагин для мозиллы оставляет формы заполненными при востановлении окна/сессии и никаких окон) -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Разве Gecko тоже?
|
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Проверил, onbeforeunload существует и работает как нужно, FireFox 1.0.7
![]() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |