![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 8
|
Добрый день.
На неких ресурсах лежат различные "клипы" (swf, jpg, gif). Я вставляю через SWFObject свой swf, который грузит соот-ий клип, на основании передаваемых параметров. var so = new SWFObject("/images/myloader.swf","mymovie","200","100","7","#336699");
so.addVariable("MovieSource", "http://remote_site/clip/clip_1.gif");
stop();
if (MovieSource != undefined) {
this.createEmptyMovieClip("image_mc", 0);
this.image_mc.loadMovie(MovieSource);
}
например? Как поменять размер отображаемого swf? 2. *.fla создан с размером документа (550Х400 pix). Если, допустим, грузится клип размером 50Х50 то он вставляется в документ 540х400, а потом этот документ уже сжимается до 200х100 (размеры переданные через SWFObject) и загружаемый клип превращается вообще в мини эконку. Таки образом, если клип больше, размера документа созданного во fla? то он сжимается до размера документа, а если меньше то становится еще меньше. Как сделать чтобы флэш отображаемый в браузере имел габариты\размеры загружаемого клипа? Если, на этапе генерации страницы я не знаю размеров клипа (т.е. не могу SWFObject-у сразу задать габариты). В publish fla не нашел как это сделать, к размеру документа тоже "достучаться" не смог (думал _root._height поможет). |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 8
|
Возможно я неясно выразился.
Хочется чтобы в браузере отображался флэш, ширина и высота которого равна ширине и высоте картинок, которые данный флэш подгружает с внешних сайтов. |
|
|||||
|
Регистрация: Nov 2003
Адрес: Север
Сообщений: 244
|
Видимо, придется делать примерно так:
1. создавать SWFObject каких-то произвольных размеров, например 0, 0 2. грузить нужный файл в image_mc 3. после окончания загрузки проверять размеры image_mc 4. через ExternalInterface вызывать JavaScript функцию, которая установит нужные размеры для SWFObject Вот... мда.
__________________
Scio me, nihil scire. |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 8
|
Спасибо, не слышал пока об ExternalInterface.
А как после загрузки изображения во флэш поменять размер документа fla, (который изначально был 550х400), на размер загруженного изображения? |
|
|||||
|
В первом кадре пропишите
Это заставит флеш не растягивать и не сжимать содержимое флешки. Потом - когда загрузили, вызываете жабоскриптовую ф-ю, которая ставит нужные размеры вашему swfObject'у на странице. |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 8
|
Исполльзовал следующий preloader:
F_preloader = function (mc) {
_root.createEmptyMovieClip("detect_mc", 100);
_root.createTextField("tf_txt", 200, 200, 190, 150, 20);
detect_mc.onEnterFrame = function() {
trace("Entering onEnterFrame");
var gbl = _root[mc].getBytesLoaded();
var gbt = _root[mc].getBytesTotal();
if (gbl == gbt && gbl>30) {
tf_txt.text = "100%";
trace(_root[mc]._height);
removeMovieClip(this);
} else {
tf_txt.text = int(gbl/gbt*100)+"%";
}
};
};
_root.createEmptyMovieClip("mc_show", 1);
ant.ru:3001/images/al_166_110.jpg");
mc_show.loadMovie("hypercube3.3.swf");
F_preloader("mc_show");
Ведь клип то уже загрузился? ЗЫ Вместо этой выдачи думал вставить вызов яваскрипта "дергающего" SWFObject. |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 8
|
Сделал как было задумано, НО тогда получается, что я буду загружать картинку 2 раза
![]() 1. SWFObject вставляет флэш 2. флэш загружает картинку 3. по переданным параметрам определяет вставляется ли он (флэш) первый раз 4. если первый, то вызывает через ExternalInterface SWFobject и мы переходим к п.1, после чего картинка грузится 2-ой раз. Может мы пошли неверным путем и есть еще какое-нибудь решение проблемы? Может как нить можно загрузить картинку "в сам флэш" или кэш браузера, а потом SWFObject загрузит флэш или картинку из кэша браузера? Последний раз редактировалось iNils; 20.03.2008 в 19:05. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:01. |
|
|
« Предыдущая тема | Следующая тема » |
|
|