![]() |
|
||||||||||
|
|
|
|||||
|
Доброго времени суток.
Подскажите пожалуйста, как можно передать переменную не во флешку, а из нее. То есть, есть html + js страница с флешкой. Во флешке вычисляется переменная. Эту переменную надо передать обратно на страницу, чтобы использовать в качестве высоты флешки. Криво объясняю, конечно, да я действо не из прямых. Суть в том, что страница не знает, какой высоты должна быть флешка, а флеш должен ей это сообщить. (ведь вроде нельзя изменить высоту swf из AS3 программно) Сомневаюсь, что это вообще возможно... Но если есть способ... |
|
|||||
|
А в яваскрипте должна быть функция setPIValue, принимающая в параметр некое число
__________________
...вселенская грусть |
|
|||||
|
Цитата:
|
|
|||||
|
Большое спасибо, а можно код функции?
Пока попробовала: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>940x124</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css" media="screen">
html, body { height:100%; background-color: #ffffff;}
body { margin:0; padding:0; overflow:hidden; }
#flashContent { width:100%; height:100%; }
</style>
<script>
function setFlashWidth(width) {
document.getElementById('940x124').width = width;
}
</script>
</head>
<body>
<div id="flashContent">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="940" height="124" id="940x124" align="middle">
<param name="movie" value="940x124.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="transparent" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="940x124.swf" width="940" height="124">
<param name="movie" value="940x124.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="transparent" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
</body>
</html>
Последний раз редактировалось demy; 17.03.2011 в 18:44. |
|
|||||
|
Так Вы ничего не добьетесь =)
Внутри флешки нужно подписаться на ресайз от стейджа, а яваскриптом менять ширину дива, в котором находится флешка. Ну и, соответственно, в параметрах вставки флешки ее ширину нужно указать в процентах. public class Main extends Sprite { public function Main() { super(); if (super.stage) this.init(); else super.addEventListener(Event.ADDED_TO_STAGE, init); } private function init(event:Event = null):void { super.removeEventListener(Event.ADDED_TO_STAGE, init); super.stage.scaleMode = StageScaleMode.NO_SCALE; super.stage.align = StageAlign.TOP_LEFT; // entry point super.stage.addEventListener(event.RESIZE, onStageResize); } private function onStageResize(event:Event):void { // перерисовываем внутренности } }
__________________
...вселенская грусть |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 497
|
Цитата:
1. ExternalInterface.available - false. Проверяется, например, trace'ом, выводом в текстовое поле или работой следующих примеров. 2. Ошибок (исключений) при вызове ExternalInterface.call никаких нет? Исключений там, например. Видно в DebugPlayer, если ошибки нигде не отлавливаются. 3. В javascript метод вызывается? Поменяйте скрипт на следующее: 4. В HTML-коде два вложенных тега Object. Сейчас код устанавливает размер только у внешнего. У внутреннего размер остается фиксирован. А во всяких firefox как раз определяющим является внутренний Object. Так что нужно дать ID-шники обоим элементам и размер устанавливать у них обоих. |
|
|||||
|
Спасибо, надо пробовать.
Последний раз редактировалось demy; 28.03.2011 в 18:13. |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:59. |
|
|
« Предыдущая тема | Следующая тема » |
|
|