Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   установка ширины высоты флешки (http://www.flasher.ru/forum/showthread.php?t=129521)

random13 03.09.2009 16:06

установка ширины высоты флешки
 
Тема наверное распространенная но все же интересует пара вопросов касающихся именно работы подобной функции:

и так я использую для загрузки моего приложения SWFObject в котором собственно устанавливаю размеры
как возможно данные параметры подгрузить флешке при ее инициализации что бы она тем самым их подхватила и работала в соответствие с размерами, на данный момент устанавливаю размеры флешки таким образом
Код AS3:

[SWF(backgroundColor="#FFFFFF", width="800", height="600")]


willis83 03.09.2009 17:02

размеры флэшки задаются в IDE до компиляции, вы их не поменяете при загрузки передавая ей какие либо параметры

Добавлено через 1 минуту
выход может быть в определении скриптом разрешения пользователя и после этого подсовывания пользователю флэшки с нужным разрешением

СлаваRa 03.09.2009 17:06

можно сделать "резину", встроив ее в html страницу, можно менять размер области для флешки.
извините если коряво написано, не придумал как правильно сформулировать мысль.

random13 03.09.2009 17:06

хммм, ну понятно что я как написал выше их указал при компиляции, а как в данном случае выйти? мне нужно из js установить размер флешки любыми способами, я почитал статьи про резиновые флешки но не нашел для себя подходящего...

СлаваRa 03.09.2009 17:14

из swf вы передаете в js новые параметры высоты\ширина,

jc принимает их и меняет размер встроенной флешки

примерно так выгляди функция jc
Код:

function my_width_size(_width){
                        document.getElementById('myAlternativeContent').style.width = _width;
                }

где myAlternativeContent - встроенная нами флешка

random13 03.09.2009 17:21

хорошо тогда наоборот: я инициализирую флешку через swfobject таким образом:
Код:

swfobject.embedSWF("/bin-debug/Main.swf", config.mapName,  config.windowSize.width, config.windowSize.height, "10", "/js/swfobject/binexpressInstall.swf", null, null, null, this.mapOnload);
как я понимаю мне нужно передать флешке размеры моего окошка, фактически вот эти переменные
Код:

config.windowSize.width, config.windowSize.height
а во флешке их присвоить:
Код AS3:

stage.width = val;
stage.height = val2;

так?

СлаваRa 03.09.2009 17:26

нет я говорю про ризоный флеш, т.е. когда вы меняете в html странице область встраивания флеша, соответсвено меняется и размер флешки, т.к. она резиновая,

а вот если вам надо менять объекты внутри swf исходя из размеров сцены, с помощью js вам надо передавать размеры во флешку, и опять же менять размеры встраивания, это единственный вариант, который мне пришел в голову, когда работал над artfamily.info, там необходимо было как - то менять размеры swf, при открытии изображения в галереях


пс
посидел подумал, в принципе, если флеш резиновая и все объекты находятся в каком - то контейнере, то при изменении размеров контейнера, и размер флешки изменится, останется только изменить размер встраивания в странице, хотя может это и не то что надо

random13 03.09.2009 17:38

ну у флешки то как изменить размер?

СлаваRa 03.09.2009 17:43

я думаю релиазовать подобный эффект можно так(я так думаю):
создаете резиновую флешку, в ней контейнер, в котором будут храниться все объекты, при изменении размеров контейнера, должен будет измениться размер(ширина, высота и т.п.) области куда встроена флеш в html странице и если, Вы, измените этот размер, с помощью js, то визуально это будет выглядеть так, как, Вы, хотите...

попробуйте, если я понятно объяснил, если нет то сейчас попробую найти исходник где лежит исходник

evg1605 03.09.2009 19:08

Кстати (к слову) необязательно менять размер элемента куда встраивается флешка, можно изменить размеры самого Object-а, т.е. искать по document.getElementById не 'myAlternativeContent' а идентификатор флешного объекта, вроде в 4 браузерах проверял - работает и можно не выставлять изначально размеры как 100% , 100%.


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

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