![]() |
Надо увидеть смерть одного окна из другого
Эт МЫ. Всем привет!
Опять возник вопрос. Очень простой - в принципе. Если я вызвал из karta.html (с запаянным в нем karta.swf) окошко/страницу - station.html (station.swf) - то реально ли из karta.html (karta.swf) увидеть ЗАКРЫТИЕ station.html (station.swf)??? Что-то ничего на ум не приходит :((( _______________________ "......страшно падать и страшно летать, страшно жить, а потом умирать....." |
ой.....
почти сразу придумал способ - правда он единственный и не очень красивый.... но хоть что-то!
Используя LocalConnection() - просто karta.html/swf постоянно (или с определнным периодом) как бы пингует (ну просто посылает тестовый пакет) station.html/swf и либо по onStatus? либо по ответному сообщению предпринимает определенные действия...........Типа такого вот... Но это же нехилая нагрузка на окошко karta !!! В-общем, может есть попроще способ для решения этой проблемы? __________________________________ "...покуда живешь, сам себе кажешься центром Вселенной..." |
А если в station.html прописать
<BODY onUnload="opener.closeWindow();"> А в karta.html function clioseWindow(){ alert("Закрыли детское окно!!")ж } Не проверял, но мож поможет? |
тестовый скрипт:
Код:
this.addProperty("is_another_window_opened", function () {в первом окне ролик: Код:
this.addProperty("is_another_window_opened", function () {Код:
this.check_close_lc = new LocalConnection();Можно в главном мувике интервалом чекать: Код:
|
Спасибо за помощь.
Но! 2 BitSky - это же тот путь, что я и преполагал....(просто времени не было разработать скрипт, так что спасибо за код :)))). Скорость реакции на закрытие не сильно критична - 1 раз в секунду вполне достаточно проверять.) Меня вообще-то больше всего интересует вопрос о том - единственный ли это путь ??? (отследить закрытие одного окна из другого.) Если нельзя - то "так я и знал" а если можно - "расскажи, хочу знать больше" _____________________________ "...А крылья сломались и мир не заметил потери..." |
существует два принципиально разных пути:
- ловить событие закрытия окна - периодически сканировать наличие объекта соответственно два решения: - первое не может быть реализовано средствами флэша, поскольку событие закрытия окна относится к окну эксплорера, соответственно может быть отловлено жабой и так или иначе передано во флэш. Этот вариант имеет явные недостатки: 1) вопрос решается не в рамках одной технологии 2) ворая технология - JS имеет массу недостатков - второе как раз таки реализуется в рамках одной технологии, недостатком же является то, что регулярное сканирование это не есть здорово. Остается только найти такой алгоритм, который бы минимально нагружал систему. В твоем случае, если хватает одного раза в секунду, то второй вариант явно предпочтительнее. Но если требовалось бы сканировать например 1 раз в миллисекунду, это было бы очень напряжно. |
ясно.
Понял. Благодарю.
Действительно лучше всего опрашивать периодески. Я как напишу и отлажу - покажу код. Пусть будет наука таким же зеленым. :) _____________ "...и он меня не остановит, нажав на клавишу Пробел..." |
Вот... Сделал и выложил..
Вложений: 1
Смотрите.
Тут из карты вызывается станция. После этого карта постоянно опрашивает станцию и при НЕОТВЕТЕ или неверном ответе - решает что станционнно окно закрыто... Еще показывается номер запроса ...... Короче смотрите - качайте если нужно.. все сам сделал! может правда поэтому код немного избыточен. (и это прелоадер там не мой, а позаимствованный (попросту краденый у одного из форумцов :-)) Но я в этом честно признался! ) Непонятно вот, что - почему ЛокалКоннекшн надо объявлять каждое отдельно, не через ЗПТ-уху или РАВНО ??? До скорого. Спасибо помогающим. |
| Часовой пояс GMT +4, время: 11:34. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.