Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.07.2011, 00:05
Аспирант
Отправить личное сообщение для AndreyS Посмотреть профиль Найти все сообщения от AndreyS
 
Регистрация: 23.03.2011
Сообщений: 47

Корректный уход с сайта
Здравствуйте!

Нужно сделать корректный уход с сайта.
На странице есть ссылка "Выйти", когда юзер её нажимает, то запускается php-скрипт (закрывает сессии, делает запись в БД). Но юзер может и не нажать ссылку, а просто закрыть страницу или перейти на другой сайт.

Использовал onbeforeunload и confirm(), но работает не правильно...

Не могу понять что в коде написать, по-этому опишу словами.
Юзер нажимает ссылку на внешний какой-нибудь сайт.
запускается моя js-функция:
if (confirm("Покинуть страницу?")) {
          запустить мой php-скрипт;
          осуществить переход по нажатой ссылке; 
        } else {
          блокровать переадресацию по ссылке; // остаться на сайте и не переходить по ссылке
        }


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

Подскажите пожалуйста, я вывел диалоговое окно, как написать обработчик для кнопок ???
Ответить с цитированием
  #2 (permalink)  
Старый 16.07.2011, 00:14
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

<script>
window.onunload= function() {
 alert("До свидания!");
};
</script>
<a href="http://yandex.ru">Нажмите на ссылку, чтобы понять</a>
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 16.07.2011, 14:48
Аспирант
Отправить личное сообщение для AndreyS Посмотреть профиль Найти все сообщения от AndreyS
 
Регистрация: 23.03.2011
Сообщений: 47

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

Например, в том же "контакте" при нажатии на внешнюю ссылку появляется окно, где можно выбрать перейти по ссылке или остаться на странице.
Вот что то подобное мне и надо.
Ответить с цитированием
  #4 (permalink)  
Старый 16.07.2011, 14:56
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

AndreyS,
Не тупи, trikadin показал на какое событие нужно вешать confirm.
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #5 (permalink)  
Старый 16.07.2011, 18:26
Аспирант
Отправить личное сообщение для AndreyS Посмотреть профиль Найти все сообщения от AndreyS
 
Регистрация: 23.03.2011
Сообщений: 47

Сделал confirm.
При нажатии на какую-нибудь ссылку появляется окно, НО если я жму отмена то все равно происходит переход по ссылки, а нужно чтоб осталось на той же странице.
То есть жму Ок или Отмена результат одинаковый - переход по нажатой ссылке.
Ответить с цитированием
  #6 (permalink)  
Старый 16.07.2011, 19:16
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

<script>
window.onbeforeunload= function() {
 return "Вы точно хотите уйти?";
};
</script>
<a href="http://yandex.ru">Нажмите на ссылку, чтобы понять</a>
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)

Последний раз редактировалось trikadin, 16.07.2011 в 19:21.
Ответить с цитированием
  #7 (permalink)  
Старый 16.07.2011, 19:39
Аспирант
Отправить личное сообщение для AndreyS Посмотреть профиль Найти все сообщения от AndreyS
 
Регистрация: 23.03.2011
Сообщений: 47

О спасибо большое!!!
А можно, например, если нажать кнопку "Уйти" со страницы" выполнить еще один скрипт мой, а потом сделать переход по ссылке?
Ответить с цитированием
  #8 (permalink)  
Старый 16.07.2011, 19:47
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от AndreyS
А можно, например, если нажать кнопку "Уйти" со страницы" выполнить еще один скрипт мой, а потом сделать переход по ссылке?
Кто, собственно, мешает попробовать?
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #9 (permalink)  
Старый 17.07.2011, 17:13
Аспирант
Отправить личное сообщение для AndreyS Посмотреть профиль Найти все сообщения от AndreyS
 
Регистрация: 23.03.2011
Сообщений: 47

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

Как обработать нажатие кнопок???
Ответить с цитированием
  #10 (permalink)  
Старый 17.07.2011, 17:19
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

document.onkeydown=function() {alert("Вы нажали кнопку!")};


А, тут не сработает.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)

Последний раз редактировалось trikadin, 17.07.2011 в 17:25.
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Iframe, извлечение информации из произвольной части сайта Stephanos Элементы интерфейса 11 22.06.2015 13:10
Новая система управления сайтом Scripto CMS deepslam Ваши сайты и скрипты 38 31.01.2011 14:55
Как передать значение по ссылке на другую страницу сайта Rollo Общие вопросы Javascript 7 18.10.2010 15:02
Внешний JS с другого сайта -- это плохо? Andrej_N Общие вопросы Javascript 2 15.10.2010 14:18