Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Базовый адрес в Firefox
Flash Zone Forum > Macromedia Flash > Начинающим
undkit
Пощу flash-игру, котороя в процессе подгрузает другие swf-файлы через loadMovie. Игры загружаются с ftp, поэтому использую <PARAM NAME="BASE" VALUE="ftp://...">. В IE все замечательно работает, а в Firefox и Opera. файлы не подгружаются. sad.gif
MustLive
undkit

Не пробовал ссылаться (включать в страницу) на флешки на ftp.

Здесь могут быть какие-то ограничения (например в флеш плагине, в частности в плагине для Мозилы, Фаерфокса и Оперы) по работе через ftp.

А основная флешка по http или ftp грузится?

Ты упомянул про "<PARAM NAME="BASE" VALUE="ftp://...">", но флешку (основную) нужно грузить через "<param name=movie value="http://" и "<embed src="http://" (и без base). Тогда и работать всё будет. Ну и подгружать дополнительные флешки в основную по http.

Так как ты полного хтмл-кода флешки не привёл, то у меня возникает вопрос, раз уж ты base используешь: ты base указал и в теге object (param name) и в теге embed? Если нет, то укажи в обоих случаях (и в embed тоже). Должно помочь - для совместимости между различными браузерами.
undkit
Естественно пользую OBJECT:

Код

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="550" HEIGHT="400">
<PARAM NAME="movie" VALUE="ftp://site2:site2@nemo.local/flash/E-MEDIEN/Ice age/Ice age 1/iceage1.swf">
<PARAM NAME="quality" VALUE="high">
<PARAM NAME="BASE" VALUE="ftp://site2:site2@nemo.local/flash/E-MEDIEN/Ice age/Ice age 1/">
<embed src="ftp://site2:site2@nemo.local/flash/E-MEDIEN/Ice age/Ice age 1/iceage1.swf" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="550" height="400" play="true" loop="false" quality="high" scale="showall" menu="true"></embed>
</OBJECT>


Ограничений по работе с ftp, думаю, нет. Разница загружать с FTP или HTTP не принципиально. Важно, что главная страница не совпадает со страницей загрузки.

Внутри iceage1.swf есть код
this.ysound.loadMovie("scrat1snd.swf");

Ссылка относительная. С учетом, что игрушка постится на http://nemo.local/index.php?newsid=521000 ,
scrat1snd.swf будет искаться на http://nemo.local/scrat1snd.swf

Переписывать код флешки не хочется. Во-первых, не моя. Во-вторых, если кто-нибудь захочет с меня скачать, базовый файл будет искать scrat1snd.swf по-прежнему на моем ftp.

Изначально пыталась действовать через <BASE HREF=...>. Знаю, не по правилам пихать его в BODY, вместо HEAD. Но IE это преспокойно кушал, а правильный Firefox - нет.
MustLive
undkit

Во-первых, попробуй сделать как я сказал:
Цитата
Так как ты полного хтмл-кода флешки не привёл, то у меня возникает вопрос, раз уж ты base используешь: ты base указал и в теге object (param name) и в теге embed? Если нет, то укажи в обоих случаях (и в embed тоже). Должно помочь - для совместимости между различными браузерами.

Укажи base и в теге embed:
Код
<embed base="ftp://site2:site2@nemo.local/flash/E-MEDIEN/Ice age/Ice age 1/"

Может быть поможет обойти нежелание браузеров отличных от ИЕ работать по другому бейс адресу.

Во-вторых. Ты говоришь, код не хочешь флешки менять. Есть ещё и специальные хитрые методы (хакерские), которые позволяют поменять адрес во флешке, без каких-либо особых изменений во флешке (т.е. без необходимости декомпеляции и перекомпиляции). Обычное бинарное редактирование.

Поэтому ты вполне можешь изменить относительный путь на абсолютный - для себя, чтобы работало как следует. И по абсолютному адресу scrat1snd.swf всё равно будут искать на твоём ftp. Так что здесь не нужно лениться - раз есть необходимость, то стоит изменить адрес подгружаемой swf прямо во флешке.
undkit
Сорри, невнимательно читала. <embed base> действительно помогло. Спасибо большое.
Русская версия IP.Board © 2001-2007 IPS, Inc.