Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.02.2006, 16:05
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 1  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
По умолчанию [AS+JS] Определение момента загрузки HTML страницы и флешки

Проблема такова:

Эти дебильно-умные дядьки выдумали 2 вида браузеров IE и Мозилу (оперу я не в счет) с разными видами событий и способов обработки содержимого страниц!!!
теперь по теме:

Есть флешка которая из яваскрипта должна получить какие-то данные.
Эти данные можно получить только после полной загрузки страницы.

Все вроде просто setVariable, getURL или fscommand, но не так просто как хотелось бы, получаеться 2 варианта которые ВСЕГДА нормально работают только в одном из браузеров %((

Вариант 1.
Вешаем нашу функцию получения данных на обработчик события onLoad все прекрасно работает, но только в ИЕ. в ФФ нет. Я это объясняю следующим: у ИЕ оно срабатывает когда вся страница загрузилась, причем во время загрузки ИЕ сразу создает все сопутствующие объекты (т.е. сразу создает контейнер для флешки и начинает сразу грузить в него флешку). У ФФ тоже когда страница загружена полностью, но ФФ создает сопутствующие объекты только после того как загрузил страницу, что очень печально получаеться мы наши данные отсылаем еще пустому контейнеру для флешки%((. как выход пытался воткнуть так onLoad=setTimeout('send()', 100); но блин это не выход, иногда этот тайм аут не успевает - смысл увеличивать его тоже не приведет не к чему (не успело за 0.1 сек не факт что успеет за 2 сек %( ).

Вариант 2.
Идем на поводу у ФФ. Получаеться что он загружает флешку только после того как загрузил контент страницы. т.е если мы из флешки вызовем getURL или fscommand для вызова send то всегда это произойдет после загрузки страницы (действует и для setVariable), но тут нас обламывает ИЕ он то флешку уже вгрузил а страницу еще не всю.

Посоветуйте кто, что может %).
Хотелосьбы найти приятное решение которое былобы в одном блоке яваскрипта ну и внутри флешки. чтоб не разбрасывать весь скрипт по всей странице.

PS если я что-то неверно сказал исправте меня.

Старый 15.02.2006, 16:16
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Сделать функцию, которая делает && двум флагам: исполнения body.onLoad и вызова функции о загрузке из .swf

Старый 15.02.2006, 16:26
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 3  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
тут еще такая мелкая запара хотелосьбы совсем избежать использование
<body onLoad="....">.
Это будет что-то типа баннера (т.е. вставляемый кусок НТМЛ и Яваскрипта, без изменения самой страницы вцелом).

пытался сделать window.onload = send
document.onload = send
но это работает только для ИЕ. %(( в ФФ есть альтернатива этому ?

Старый 15.02.2006, 19:19
meiciuc вне форума Посмотреть профиль Отправить личное сообщение для meiciuc Найти все сообщения от meiciuc
  № 4  
Ответить с цитированием
meiciuc

Регистрация: Nov 2005
Сообщений: 149
во избежание лишних вопросов сразу кидаю кусок работающего кода(без полного списка всех переменных). Суть вот в чем - переменные можно передавать во флешку прямо из хтмл через FlashVars . Обращаю ваше пристальное внимание на то, что эти переменные должны быть и в таге <PARAM и в таге <EMBED. С первым работает под ие, а со вторым под фф. Я в свое время часа 2 потратил, пока на фф заработало. Под фф флеш-плейера для линукса тоже много глюков. Берегитесь.

Потом к переменным можно обращаться по тем же именам, что и в тагах , типа _root["numeJoc"]; Причем - эти переменные создаются сами внутри клипа, их даже не надо создавать на момент компилляции.

Код:
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
	 codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
	 ID="partide" WIDTH="635" HEIGHT="450" ALIGN="">
		 <PARAM NAME=movie VALUE="http://dzserv.neogen.ro/new/partide3v012.swf">
		 <PARAM NAME=FlashVars VALUE="numeJoc=scorch&numeTabla=doizece&debug=0">
		 <PARAM NAME=quality VALUE=high>
		 <PARAM NAME=bgcolor VALUE=#FFFFFF>
		 <EMBED src="http://dzserv.neogen.ro/new/partide3v012.swf"
			FlashVars="numeJoc=scorch&numeTabla=doizece&debug=0"
			quality=high
			bgcolor=#FFFFFF
			WIDTH="635" HEIGHT="450"
			swLiveConnect=true
			ID="partide"
			NAME="partide" 
			TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">
		</EMBED>

	</OBJECT>

Старый 15.02.2006, 19:31
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 5  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
вобщем я сделал приблизительно так ка говорил Антарес.

meiciuc немного не то, данные нужно передавать не статические а динамические, т.е. сформировать их во время работы! Но все равно спасибо за заботу %).

ЗЫ Опера мастдай. я даже не хочу думать о том как это сделать чтоб под нее работало !, и наверное постараюсь съехать сославшись на 1.5-2 % пользователей %)

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:40.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 12:40.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.