Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Обуздание Яндекса (http://forum.oszone.net/showthread.php?t=51226)

hasherfrog 02-07-2005 16:19 337810

Обуздание Яндекса
 
Яндекс вообще одна из суперских систем. Везде лезет, никого не слушает, умная как ч@рт ну и вообще... Вот я и попал в такую интересную ситуацию:

Нужно вызвать окно с результатами яндекс-поиска внутри фрейма. Но яндекс - не дурачок (а точнее, просто злобный кекс :-Е). У него страница содержит такой финт:

HTML код:

onLoad="if( self.parent.frames.length != 0 ) { self.parent.location = document.location } ... "
Ну и понятно, что из фрейма он вылезает, убивая все остальные фреймы страницы.

Есть способ обрубить выполнение данной штуки? Я попробовал window.frames[i].onLoad="", но установка выполняется слишком рано, видимо. После загрузки фрейму заново присваивается яндексовский скрипт, со всеми вытекающими.


Есть идеи???

hasherfrog 02-07-2005 17:51 337836

Причём что интересно. Всё-таки если фрейму при создании сказать, к примеру, что
HTML код:

<frame src="http://yandex...." onload="javascript:(this.onLoad=alert(document.title))>
То фрейм таки отследит, что яндекс закончил загрузку (и покажет алерт-бокс).
Но сразу после закрытия мессадж-бокса всё равно срабатывает яндексовский onload().
Как же его отключить?

E-mail 02-07-2005 23:52 337921

hasherfrog а почему именно фреймы?


mar 03-07-2005 01:20 337937

напрямую, по-моему, никак. Вариант - скрипт (php, или shtml с подключением скрипта), получающий контент страницы, парсящий ее, выкусывющий лишнее (или наоборот необходимое) и вставляющий в нужное место.

hasherfrog 03-07-2005 04:19 337967

E-mail
>> а почему именно фреймы?
А как ещё загрузить окно в окне?

mar
Хм. Проверить можно только практикой - что если сразу после загрузки пропарсить текст и убить onload прямо в тексте? Или что-то с ним сделать, а потом прибить тот фрейм... Плохо соображаю сейчас, короче, надо попробовать. Только никаких php и shtml у меня нету. Только JavaScript.


Время: 06:09.

Время: 06:09.
© OSzone.net 2001-