Как поместить HTML во флэш-файл? - PullRequest
1 голос
/ 27 февраля 2012

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

позиционные действия (действия, которые я использовал, чтобы выровнять почти все)

stage.scaleMode=StageScaleMode.NO_SCALE;

stage.align=StageAlign.TOP_LEFT;

stage.addEventListener(Event.RESIZE, onStageResize);
addEventListener(Event.ENTER_FRAME, onFrame);

function onStageResize(evt:Event):void {

if(fullProjectPanelUp==true){

    fullProjectPanel.x = stage.stageWidth/2 - fullProjectPanel.width/2;
    fullProjectPanel.y = stage.stageHeight/2 - fullProjectPanel.height/2;

}

navContainer.y = stage.stageHeight-77;
navContainer.scaleX = stage.stageWidth/1225;
mainContainer.x = stage.stageWidth/2 - mainContainer.width/2;
mainContainer.y = stage.stageHeight/2 - mainContainer.height/2;

}

function onFrame(evt:Event):void {

if(fullProjectPanelUp==true){

    fullProjectPanel.x = stage.stageWidth/2 - fullProjectPanel.width/2;
    fullProjectPanel.y = stage.stageHeight/2 - fullProjectPanel.height/2;

}

navContainer.y = stage.stageHeight-77;
navContainer.scaleX = stage.stageWidth/1225;
mainContainer.x = stage.stageWidth/2 - mainContainer.width/2;
mainContainer.y = stage.stageHeight/2 - mainContainer.height/2;

}

и мои навигационные действия (действия, которые я использовал для панели навигации)

import com.greensock.TweenLite;

var buttonArray:Array = new Array( );
var currentButton:Object = new Object;
var selectedSection:Number = 0;

var fullProjectPanelUp:Boolean=false;
var firstSectionUp:Boolean=true;
var secondSectionUp:Boolean=false;
var thirdSectionUp:Boolean=false;
var fourthSectionUp:Boolean=false;

var navContainer:Sprite=new Sprite  ;
addChild(navContainer);

var navArray:Array=["الرئيسية","المحتوى","المراجع","التواصل", "خريطة الموقع"];

for (var i:Number=0; i<5; i++) {

        var navItem:NavItem = new NavItem;
    navItem.x = navItem.width*i;
    navItem.nav_name.text = navArray[i];
    buttonArray.push(navItem);
    navItem.addListeners();
    navContainer.addChild(navItem);

    navItem.name = String(i);

    navItem.addEventListener(MouseEvent.CLICK, onNavClick);
}

function onNavClick(evt:MouseEvent):void {

    if(fullProjectPanelUp == true){

        removeChild(fullProjectPanel);
        fullProjectPanelUp = false;

    }

    selectedSection = Number(evt.currentTarget.name);

    currentButton.y = 0;
    currentButton.addListeners();
    currentButton.addEventListener(MouseEvent.CLICK, onNavClick);

    currentButton = evt.currentTarget;
    currentButton.removeListeners();
    currentButton.removeEventListener(MouseEvent.CLICK, onNavClick);

    animateOut();

}

function removeAllChildren():void {

    var k:uint=mainContainer.numChildren;

    while (k --) {
        mainContainer.removeChildAt(k);
    }
}

function animateOut():void {

    TweenLite.to(mainContainer, 0.6, { x:stage.stageWidth, alpha:0,         onComplete:animateIn});

}

function animateIn():void {

    removeAllChildren();
    mainContainer.gotoAndStop(selectedSection+1);

    TweenLite.to(mainContainer, 0.4, {alpha:1});

}

initialNavigation();

function initialNavigation():void {

    buttonArray[0].y = -10;
    currentButton = buttonArray[0];
    currentButton.removeListeners();
    currentButton.removeEventListener(MouseEvent.CLICK, onNavClick);
}

var navSide:NavSide = new NavSide;
navSide.x = navContainer.width;
navSide.width = stage.stageWidth - navContainer.width;
navSide.alpha = 0.7;
navContainer.addChild(navSide);

navContainer.y = stage.stageHeight-67;

и, если вам нужны файлы

"файлы"

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

Единственное доступное решение - добавить абсолютный контейнер на HTML-страницу.Используя ExternalInterface.call, вы можете отправить координаты из AS3 в javascript и установить положение контейнера html.

Обратите внимание, что wmode вашего swf должен быть непрозрачным или прозрачным, чтобы разрешить HTML-контент поверх флэш-памяти.

0 голосов
/ 28 февраля 2012

Если вы разрабатываете мобильное приложение с Adobe AIR, это действительно можно сделать, и это очень просто. Просто используйте StageWebView: http://www.adobe.com/devnet/air/quick_start_as/quickstarts/qs_using_stage_web_view.html

...