Witam,
Mam następujący problem:
Otóż, chciałbym aby moja animacja flash osadzona w dokumencie html była rozciągnięta na całość przeglądarki www (z tym nie ma problemu, wystarczy ustawić 100% na szerokości i wysokości), jednak aby sama zawartość animacji nie zniekształcała się.
Chodzi o to aby "obszar roboczy" animacji miał 100%, a w nim znajdowały się animacje, które mają stałą szerokość i wysokość i były wyrównane do lewej i do środka (będzie to menu i zawartość podstron).
Czy ktoś spotkał się z takim rozwiązaniem. Pewnie chodzi tu o jakiś skrypt w JS.
Skalowanie animacji/obszaru roboczego
Re: Skalowanie animacji/obszaru roboczego
Nie jestem pewien, ale wydaje mi sie ze mozesz w ustawienia publikowania w samym flashu wybrac czy ma skalowac zawartosc. Z tego co pamietam to jest funkcja "allow full screen" - moze to zabezpieczy przed skalowaniem.
Re: Skalowanie animacji/obszaru roboczego
Kiedyś było takie rozwiązania posługujące się JavaScript, poszukaj w Google czegoś na „java script auto resize flash” itp
Re: Skalowanie animacji/obszaru roboczego
Nie o to mi chodziło. Jak napisałem, nie mam problemu z rozciągnięciem animacji na 100% ekranu. Chodziło mi o to jak osadzić elementy, które nie są skalowane i wyrównać je do krawędzi animacji, która ma 100% szerokości i wysokości.
Re: Skalowanie animacji/obszaru roboczego
AS2
AS3
Kod: Zaznacz cały
Stage.scaleMode = "noScale";
Stage.align = "LT";
///
var POZYCJA_MENU_X:Number = 20;
var POZYCJA_MENU_Y:Number = 20;
//
function inicjowanie():Void {
ustawanieMenu();
ustawanieTresci();
ustawanieStopki();
}
function ustawanieMenu():Void {
menuMc._x = POZYCJA_MENU_X;
menuMc._y = POZYCJA_MENU_Y;
}
function ustawanieTresci():Void {
trescMc._x = int(Stage.width / 2 - (trescMc._width / 2));
trescMc._y = int(Stage.height / 2 - (trescMc._height / 2));
}
function ustawanieStopki():Void {
stopkaMc._x = 0;
stopkaMc._y = Stage.height - stopkaMc._height;
stopkaMc._width = Stage.width;
}
//
inicjowanie();
var myResizerListener:Object = new Object();
myResizerListener.onResize = function() {
inicjowanie();
};
Stage.addListener(myResizerListener);Kod: Zaznacz cały
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
///
const POZYCJA_MENU_X:uint = 20;
const POZYCJA_MENU_Y:uint = 20;
//
function inicjowanie():void {
ustawanieMenu();
ustawanieTresci();
ustawanieStopki();
}
function ustawanieMenu():void {
menuMc.x = POZYCJA_MENU_X;
menuMc.y = POZYCJA_MENU_Y;
}
function ustawanieTresci():void {
trescMc.x = int( stage.stageWidth / 2 - (trescMc.width / 2));
trescMc.y = int(stage.stageHeight / 2 - (trescMc.height / 2));
}
function ustawanieStopki():void {
stopkaMc.x = 0;
stopkaMc.y = stage.stageHeight - stopkaMc.height;
stopkaMc.width = stage.stageWidth;
}
function onResizeHandler(event:Event):void{
inicjowanie()
}
//
inicjowanie()
stage.addEventListener(Event.RESIZE, onResizeHandler);
