<MyRusakov.ru />

Разработчик игр на Unreal Engine

Разработчик игр на Unreal Engine

Этот комплект с нуля всего за 7 месяцев сделает Вас Unreal-разработчиком. И при этом учиться достаточно 1 час в день.

Начнёте Вы с основ программирования, постепенно перейдя к C++. Затем очень подробно изучите Unreal Engine, и после научитесь программировать на C++ в Unreal Engine. В конце создадите крупный проект на C++ в Unreal Engine для своего портфолио.

Комплект содержит:

- 416 видеоуроков

- 95 часов видео

- 1024 задания для закрепления материала из уроков

- 3 финальных тестирования

- 4 сертификата

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Обработка закрытия вкладки

Обработка закрытия вкладки

У меня уже несколько раз спрашивали, как можно обработать закрытие вкладки. Допустим, пользователь хочет закрыть Ваш сайт, а Вы делаете какое-нибудь всплывающее окно и спрашиваете: "А Вы уверены?", или делаете редирект на другой сайт. Разумеется, эти методы очень сильно раздражают пользователей, поэтому рекомендую не использовать их. К счастью, браузеры это так же очень плохо обрабатывают, однако, кое-какие возможности по обработке закрытия вкладки всё-таки имеются.

Есть возможность спросить у пользователя: "Уверен ли он, что хочет закрыть страницу?". Вот как можно реализовать такую обработку закрытия вкладки:

<script type="text/javascript">
  window.onbeforeunload = function() {
    return "Что-нибудь сообщить пользователю";
  }
</script>

Вот такой код будет работать в Firefox, IE, Chrome, но не будет работать в Opera (этот браузер onbeforeunload вообще никак не обрабатывает). При этом сама функция обработки может только возвращать строку, то есть никаких редиректов там не сработает.

Возвращаемая строка будет выводиться в окне подтверждения в Chrome и IE. В Firefox эта строка никак себя не проявляет.

Вот таким образом можно обрабатывать закрытие вкладки, однако, возможности здесь очень сильно ограничены, что, на мой взгляд, очень и очень хорошо.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (8):

lev_100rus lev_100rus 24.06.2013 16:24:27

У вас тут ошибка "При этом сама функции"

Ответить

Admin Admin 24.06.2013 19:08:46

Спасибо, исправил!

Ответить

Fly Fly 03.07.2013 17:58:43

Михаил, это так и должно быть? Написал себе код на свой сайт, и это окно высвечивается, не только при попытки закрытия вкладки. Дело в том что пытаясь перейти по ссылке на сайте, которая не выгоняет пользователя на другой сайт, это окно, нахально вылезает.

Ответить

Admin Admin 03.07.2013 20:19:14

Да, так и должно быть.

Ответить

Fly Fly 03.07.2013 21:54:59

Тогда никаких притензий, похоже код обрабатывает не закрытие вкладки, а переход на другой URL.

Ответить

karhan karhan 09.06.2015 10:47:09

Как добавить туда ажакса ? У меня вот такой код: window.onbeforeunload = function() { if (!window.btn_clicked || !window.linkClicked) { var lg="out"; $.ajax({ url: 'http://localhost/mvc/ajax/', type: "POST", async: true, datatype: "html", data: 'lg='+lg, }); return "Are you sure you want to leave the page?"; } }; но тут при нажатии отмены ажакс работаеть

Ответить

YULIS007 YULIS007 11.08.2015 17:40:28

Михаил, подскажите пожалуйста, как усовершенствовать этот код, так чтобы это работало только при закрытии страницы на которую ставишь, и не срабатывало на переход на другую ссылку, заполненную форму и нажатие кнопки "Отправить". Заранее премного благодарен!

Ответить

samvel29 samvel29 24.03.2019 22:48:04

Это событие срабатывает и просто при обновлении страницы

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.