Location.replace и события
Всем привет! У меня возник вопрос по поводу событий и редиректа. Суть такова:
мне надо чтобы при выходе со страницы у человека случался редирект куда-то. я попробовал делать через события onunload и onbeforeunload. когда я пишу onbeforeunload="javascript:window.alert('Спасибо, что нас посетили!')" то, все работает. когда пишу onunload="javascript:window.alert('Спасибо, что нас посетили!')" Тоже все работает. Но когда пишу onbeforeunload="javascript:window.location.replace("http://yandex.ru")" или onunload="javascript:window.location.replace("http://yandex.ru")" то ничего. Почему? |
А вы сами как думаете?
|
Я думаю, что редирект происходит, но сразу после этого страница закрывается. Или я просто криворук. В любом случае я не знаю что делать. Помогите плз с решением изначальной проблемы. Хотя нет, изначальная выглядит вот так:
Onload ом я запускаю редирект а потом onunloadom обрубаю загрузку. Но почему-то не выходит. Утром напишу все более подробно. |
Присмотритесь к кавычкам
|
да, спасибо я поправил, и редирект заработал. Но теперь я сталкнулся с другой проблемой: как оборвать загрузку страницы после редиректа?
Я попробовал window.close() - прочитал где-то, что это как раз таки и обрубает, но на самом деле закрывает окно. Сейчас попробовал OnUnLoad="javascript:window.stop()" но обрубания загрузки не происходит. как быть? |
Та и правильно делает :nono:
|
Щито? Помогите плз. Нужно как то организовать обрубание соединения после редиректа. Но как?
|
onbeforeunload попробуйте
|
<body OnBeforeUnLoad="javascript:window.stop()" OnLoad="javascript:location.replace('http://yandex.ru')" > Текст </body> Не работает |
Погуглите как нужно вешать события, что оно должно возвращать.
|
Что-то я сегодня тугодумлю. Вы не могли бы расписать что не так и как сделать правильно? Или конкретнее намекнуть?
|
Я написал вам нужное событие.
|
Так, onbeforeunload выдает диалоговое окно "Хотите ли вы выйти". НО мне нужно вместо этого диалогового окна впихнуть завершение загрузки, чтобы редирект мой не загрузился (да и вообще все ссылки на странице не заработали, и чтобы только лишь менялся url). И я не понимаю как.
|
Вы никак не можете запретить юзеру уйти со страницы.
|
нет есть 1 уход - закрыть ее.
з.ы. а вообще я помню как у меня 2 раза 2ым окном загружался какой-то порносайт при закрытии которого все время вылетало диалоговое окно в котором требовали прислать смс-ку хз даже за что. Когда я нажимал отмену (не уходить с сайта) окно вылетало снова. Т.е. я даже не мог например перейти на другую вкладку. в итоге пришлось закрывать весь браузер. ну так что? как мне оборвать загрузку через onbeforeunload? |
Часовой пояс GMT +3, время: 20:26. |