home > AS3 : フルスクリーン時のスクロール

AS3 : フルスクリーン時のスクロール

April 21, 2009

Flashでフルスクリーンにした時にあるサイズになったらスクロールを表示したい時。
メインのクラスは


import Scrollarea;

Stage.scaleMode = "noScale";
var stagearea:Scrollarea = new Scrollarea(1000, 550, "flashcontent");


Scrollareaクラスは

package{
import flash.events.MouseEvent;
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.external.ExternalInterface;

public class Scrollarea
{
public function Scrollarea(WrapWidth:Number, WrapHeight:Number, IDName:String) {
IDName != undefined ? ExternalInterface.call("setWrapID", IDName) : null;
ExternalInterface.call("setWrapSize", WrapWidth, WrapHeight);
}
public function setWidth(WrapWidth:Number) {
ExternalInterface.call("setWrapWidth", WrapWidth);
}
public function setHeight(WrapHeight:Number) {
ExternalInterface.call("setWrapHeight", WrapHeight);
}
}
}

js


var FlashWidth=0;
var FlashHeight=0;
var WrapID="WrapFlash"

function getBrowserWidth ( ) {
if ( window.innerWidth ) { return window.innerWidth; }
else if ( document.documentElement && document.documentElement.clientWidth != 0 ) { return document.documentElement.clientWidth; }
else if ( document.body ) { return document.body.clientWidth; }
return 0;
}
function getBrowserHeight ( ) {
if ( window.innerHeight ) { return window.innerHeight; }
else if ( document.documentElement && document.documentElement.clientHeight != 0 ) { return document.documentElement.clientHeight; }
else if ( document.body ) { return document.body.clientHeight; }
return 0;
}
function setWrapWidth (WrapWidth) {
FlashWidth=WrapWidth;
setFlaArea();
}
function setWrapHeight (WrapHeight) {
FlashHeight=WrapHeight;
setFlaArea();
}
function setWrapSize (WrapWidth,WrapHeight) {
FlashWidth=WrapWidth;
FlashHeight=WrapHeight;
setFlaArea();
}
function setWrapID (IDName) {
WrapID=IDName;
}
function setFlaArea(){
var WrapFlashElement = document.getElementById(WrapID);
if(getBrowserWidth()>FlashWidth){ WrapFlashElement.style.width = "auto"; }
else{ WrapFlashElement.style.width = FlashWidth+"px"; }
if(getBrowserHeight()>FlashHeight){ WrapFlashElement.style.height = "auto"; }
else{ WrapFlashElement.style.height = FlashHeight+"px"; }
}
window.onresize = setFlaArea;



ブックマークする hatena del.ico.us


Comments

Post a Comment






Remember personal info