Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Как расширить SWF на странице? (http://www.flasher.ru/forum/showthread.php?t=101936)

Rodionnn 05.10.2007 13:50

Как расширить SWF на странице?
 
Помогите плиз.

Имеем флэшку. Внутри нее текстовое поле. В него загружается текст из XML. Иногда текста так много что высота текстового поля больше высоты флэшки - текст обрезается.
Необходимо взависимости от высоты текстового поля изменять высоту флэшки.
КАК ТАКОЕ СДЕЛАТЬ ???

Пробовал вызывать яваскрипт и менять высоту - получается. Но немогу правильно передать высоту текст поля из флэшки наружу.
писал шото типа
Код:

getURL("javascript:ResizeMovie(" + RealHeight + ");");
но не помогло.

Любые советы по этому поводу преведствуються.

etc 05.10.2007 14:04

Это «шото типа» должно было работать, если код функции ResizeMovie верный и в него передан правильный RealHeight.

Rodionnn 05.10.2007 14:42

Проблема в том, что я немогу получить правильную высоту текст поля после загрузки текста в него. Высота как была 200 так и осталась

Molecula 05.10.2007 14:42

(Stage.width property)
public static width : Number
Property (read-only);

Wolsh 05.10.2007 15:31

В принципе реализуемо, только в фаерфоксе не будет работать

Molecula 05.10.2007 15:33

А не проще текст под маску поставить?

Rodionnn 05.10.2007 15:33

Вот пример моего кода.
Из флэша вызывается яваскрипт
Код:

getURL("javascript:ResizeMovie('"+_level0.outtroBody._height+"');");
Вот страница
Код:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <script type="text/javascript" src="swfobject.js"></script>
    <script language="javascript" type="text/javascript">
    var FlashHeight;
    function ResizeMovie(_FlashHeight)
    {
        FlashHeight = _FlashHeight;
    }
    </script>
</head>
<body>
    <div id="flashcontent" style="border:solid 1px red;">
        <strong>You need to upgrade your Flash Player</strong> This is replaced by the Flash content.
    </div>
    <script type="text/javascript">
      var so = new SWFObject('puzzelaf_07_v4_WORKING_VERSION.swf', 'sotester', '600', FlashHeight, '8', '#FFFFFF');
      so.write('flashcontent');
    </script>
</body>
</html>

Необходимо передать в конструктор SWFObject новую высоту.
Моя функция РЭСАЙЗМУВИ не вызывается вообще.

Wolsh 05.10.2007 16:32

Как Вы проверяли что она не вызывается? В Вашей "функции" всего лишь присваивается значение переменной, при чем здесь ресайз? Для ресайза надо перерисовать объект с новыми параметрами, однако.

Kikasso 05.10.2007 17:56

Надо вставлять флешку 100% по высоте, читаем про резиновый флеш, и менять style у div'a в котором флешка. Вот и все.
Код:

function ResizeMovie(val){
    document.getElementById('flashcontent').style.height = val;
}


Molecula 05.10.2007 17:58

Див, по-мойму по дефолту кушает всё пространство, в котором он находится.
-------------
А нет, соврал, только ширина по дефолту 100%

etc 05.10.2007 19:49

Ресайзить надо div со флешом (описаная функция вообще фигней какой-то занимается), а у флеша выставить высоту 100%.
Что такое FlashHeight? Изменяя значение этой переменной, что вы хотите получить? Ничего не получите, значение изменилось и все, больше оно ничего не делает.

Wolsh 05.10.2007 20:07

Ну вот так например
Код:

function autosize(w,h){
  DI = document.getElementById('flashcontent').style;
//DI=flashcontent.style;
    DI.width=w;
    DI.height=h;
    };


Kikasso 05.10.2007 20:11

дык а я что написал?

Wolsh 05.10.2007 20:38

Kikasso, мы вроде с тобой не в первый раз одновременно пишем, чего так нервничать?

Kikasso 05.10.2007 20:49

Цитата:

Сообщение от Wolsh
Kikasso, мы вроде с тобой не в первый раз одновременно пишем, чего так нервничать?

Так я ошибку у себя ищу..


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

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