Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> анализ открытого окна 
:(
    Опции темы
wildrabbit
Дата 18.10.2006, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.8.2006

Репутация: нет
Всего: нет



Вопрос в следующем:

есть код:
Код

mywin=window.open("http://www.list.ru");
mywin.onload=alert("загрузилось");


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

как понять, что в новом окне у нас сайт загрузился? Ваще хочу чтобы по title следить за состоянием сайта, т.е.
если в title содержится слово error, то сделать какие-нибудь действия... вот так.
PM MAIL   Вверх
griker
Дата 18.10.2006, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MDMA
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 14.7.2006
Где: Tallinn

Репутация: 1
Всего: 8



Поставь на открываемую страницу в body
Код

onload="alert('Message');"



--------------------
I don't respect police
PM MAIL   Вверх
GIK
Дата 18.10.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый человек
**


Профиль
Группа: Участник
Сообщений: 985
Регистрация: 3.6.2005
Где: я только не небыв ал

Репутация: 6
Всего: 14



Цитата(wildrabbit)

 а надо чтобы только после того как что-то загрузилось.

Это команда на вывод alerta при загрузке.  Посмотри сдесь


--------------------
Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!!
Программирование - это не деятельнось! Программирование - это состояние души!
Бог - самый крутой программист.
PM MAIL ICQ   Вверх
wildrabbit
Дата 19.10.2006, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.8.2006

Репутация: нет
Всего: нет



наверное я плохо выразил свою мысль.

Моя задача состоит в том чтобы
1) открыть новое окно с указанным адресом (адрес выбирается из списка)
2) ждать пока сайт загрузится
3) если в title открытого окна появилось слово error, то закрыть окно и перейти к следующему по списку
4) если сайт загрузился полностью и нет слова еррор, то не закрывать это окно
PM MAIL   Вверх
vasac
Дата 19.10.2006, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



wildrabbit, адреса пренадлежат тому же домену, что и изначальная страница? Если нет, то ты не можешь иметь к ним доступ.

Если твоему, то так:
Код

mywin.onload = ( function() {alert( "Загрузилось" ); } );

алерт выскочит в родительском окне.

mywin.alert( "Загрузилось" ); — так в дочернем

Это сообщение отредактировал(а) vasac - 19.10.2006, 18:25
PM WWW   Вверх
wildrabbit
Дата 20.10.2006, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.8.2006

Репутация: нет
Всего: нет



в том то и дело, что адреса разные, но заранее определенные.

Цитата

mywin.onload = ( function() {alert( "Загрузилось" ); } );


так ваще не работает ничего. и имхо и не должно работать.

дело в том, что когда я делаю так как в моем первом примере, то не дождавшись загрузки list.ru сразу же вылетает alert.
а мне надо чтобы дождаться когда загрузится, проанализировать что написано в тайтле нового окна, и потом сказать, что
"все мол загрузилось" или наоборот "нихрена не грузится. иди, звони, проверяй у хостера в чем дело".
вот такая задача.

задача вобщем тривиальная, но что-то никто не может ее решить, а никого из гуру такие задачи не интересуют.
мелкая цель наверное smile
PM MAIL   Вверх
AKS
Дата 20.10.2006, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 27
Всего: 52



wildrabbit,  У Вас в IE наверно не работает такое:
Код

mywin.onload =  function() {alert( "Загрузилось" ); }
 
Это должно работать в DOM-браузерах. А для IE напишите отдельную веточку:
Код

if(window.execScript) 
  mywin.execScript('window.onload = function() {alert( "Загрузилось" ); }', 'JScript');

PM MAIL   Вверх
wildrabbit
Дата 20.10.2006, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.8.2006

Репутация: нет
Всего: нет



хм. странно.
нет, у меня не ИЕ, у меня Опера.

Код

mywin.onload =  function() {alert( "Загрузилось" ); }


ваще ничего на дает. т.е. нету алерта, не вылетает он ваще.
а у Вас как это работает? у Вас после того как новое окно открылось, в нем загрузился сайт, только после этого вылетает алерт?
а у Вас какой браузер?
PM MAIL   Вверх
vasac
Дата 20.10.2006, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



wildrabbit, что ж, родной, если тебя не устраивают ответы можешь подождать гуру. Может они таки сблаговалят прийти и написать тоже самое — "нельзя получить доступ к странице другого домена".

У меня на одном домене alert вылетает на новой странице в FF и opera9. В IE, да, действительно это не работает.

А почему в твоем изначальном примере алерт выскакивает до загрузки я думаю ты сможешь понять сам, если немного подумаешь над ним.
PM WWW   Вверх
AKS
Дата 20.10.2006, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 27
Всего: 52



wildrabbit, 
Вы знаете, я поторопился, как всегда, извиняюсь. Я проверял в IE, Opera'х (8+), Gecko'бразах, но проверил лишь "свои" страницы. С чужими, конечно же, работать не будет - нету к ним доступа, а Вы как-раз для чужих хотели бы...
PM MAIL   Вверх
wildrabbit
Дата 20.10.2006, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.8.2006

Репутация: нет
Всего: нет



vasac, понял, только сначала подумал, что Вы что-то другое имели ввиду.
AKS, спасибо.

Теперь я понял, что с помощью javascript такое не сотворить. А с помощью пхп или чего-то еще можно?
PM MAIL   Вверх
Nicholas_S
Дата 20.10.2006, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 12.10.2006
Где: Санкт-Петербург

Репутация: 5
Всего: 19



wildrabbit, есть одно решение, хотя использовать его или нет - смотри сам.

Из родительского окна создаешь новое с помощью window.open, например: var newWin = window.open('myURL', '_blank');
Где myURL - адрес на твою страницу со следующим содержанием:

Код

<frameset cols='*'>
  <frame onload="window.opener.status = 'Page status is loaded'" src="alienURL">
</frameset>


Т.е. по сути страница подменяется на твою, та, в свою очередь, загружает "чужой" URL.
Решение не есть самый гуд (например, надо учесть еще изменение заголовка окна (TITLE) на тот, который имеется у "чужой" страницы),
но с пивом потянет smile
А менять контент "чужых" страниц, как правильно сказал vasac, недопустимо. Сделано это в браузерах из-за соображений безопасности.


--------------------
...все в мире относительно
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0513 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.