Перехват редиректа

Статус
В этой теме нельзя размещать новые ответы.

Ratko

Постоялец
Регистрация
13 Сен 2008
Сообщения
93
Реакции
21
У меня следующая проблема:
Есть javascript, который создает фреймы, и загружает во фреймы страницы. Все работает хорошо, если ссылки прямые, но если при переходе по ссылке случается редирект - перегружается вся страница. Возможно ли чтобы редирект проходил не на странице, а во фрейме?
Возможно ли средствами javascript отслеживать и запрещать редиректы?
 
Скорее всего речь идёт не о редиректе, а о скрипте "Уничтожитель фреймов" которые используют сайты.
Пример yandex.ru
Данный скрипт работает во всех браузерах, кроме Opera.

Если, Вы загружаете чужие сайты, например yandex, то повлиять можно если использовать серверный скрипт, который будет парсить загружаемую страницу, вырезать "зловредный код" и уже выводить на своём сайте результат работы. Визуально страница будет грузится так же быстро. Единственное, донор может заметить частое обращение с одного ip.

Открытие нового окна в не фрейма, так же может быть при клике на ссылке (на загруженном сайте в фрейме) с target="_blank", обычный редирект такое выполнить не может (target="_blank"), т.к. будет блокироваться современными браузерами, как попытку открыть новую вкладку без ведома пользователя, но есть скрипты (обычно используются партнёрками типа маркетгид) которые это обходят, перехитрить этот скрипт так же нельзя, кроме вышеописанного метода.
 
можно на jQuery, перехватывать ссылки, и открвать их где угодно
занимательный перехват ссылок с типаом бланк


а вот редиректы вида
Код:
<script type="text/javascript">
  setTimeout(function(){$(window.location).attr("href", "' . $url . '");},'.$time.');
</script>
остановить явой не просто будет
 
Мне нужно что то типа этого:

Находишь трек, проигрываешь, и когда во время проигрывания трека вбиваешь новый адрес в адресную строку - выводится табличка: "Вы действительно хотите..." как на скрине:
show-image.php

как можно сделать подобное. У меня опыта маловато. :nezn:
 

Вложения

  • screen.jpg
    screen.jpg
    151,3 KB · Просмотры: 13
Очень сложно формулируете вопросы. )))
не увидел этого окна, попробовал при проигрывании перейти на другую страницу (вообще нужно тестить в разных браузерах, не во всех одинаково)

Если речь идёт о всплывающем окне при выходе со страницы, то

Код:
<script>
window.onbeforeunload = function (e) {
	var e = e || window.event;
	// For IE and Firefox
	if (e) {
	  e.returnValue = 'Вы действительно хотите закрыть это окошко?';
	}
	// For Safari
	return 'Вы действительно хотите закрыть это окошко?';
};
 </script>

или

Код:
 <body onUnLoad="function OnExit() { 
if (confirm ("Вы действительно хотите закрыть это окошко?")) 
top.close();">
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху