플래시 질문 드려도 될까요?ㅠ.
http://www.bellefontaine.co.kr/board/?db=event&cate=&search=title&search_str=&x=40&y=10
보시면..... 검색 인풋 박스가 활성화가 안됩니다.
급한건데 ㅠ 도저히 해결책을 모르겠네요 플래시 메뉴가 덮고 있는데...플래시 소스를 아무리 봐도 모르겠네요.. 혹시 봐주실 수 있으신분 부탁좀 드리겠습니다.ㅠ
액션 3.0이고요.. 소스 첨부합니다.
package src
{
import common.ImgLoadToBitmap;
import common.xmlLoader;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.filters.BlurFilter;
import flash.net.navigateToURL;
import flash.utils.Timer;
import src.common.Req;
import transition.FadeOut;
import transition.bannerImg;
public class MainBanner extends Sprite
{
private var Banner_spr:bannerImg;
private var timerObj:Timer;
private var Img_arr:Array;
private var _totalCunt :uint;
private var _loadCunt :uint;
private var currentNum :uint;
private var effectTime :Number;
private var ReqVar:Req;
private var parsXML:xmlLoader;
public function MainBanner()
{
super();
this.stage.align = StageAlign.TOP;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
this.Img_arr = new Array();
this.currentNum = 0;
this.timerObj = new Timer(0);
this.ReqVar = new Req();
this.parsXML = new xmlLoader();
this.addEvent();
}
private function addEvent():void
{
this.parsXML.addEventListener(xmlLoader.XML_LOADERCOMPLETE, this.xmlHandler, false,0,true);
this.parsXML.addEventListener(xmlLoader.XML_LOADERFAILURE, this.xmlHandler, false,0,true);
this.parsXML.addEventListener(xmlLoader.XML_LOADERERROR, this.xmlHandler, false,0,true);
this.timerObj.addEventListener(TimerEvent.TIMER, this.timerHandler, false,0,true);
this.addEventListener(Event.ADDED_TO_STAGE, this.inti, false,0,true);
this.addEventListener(Event.REMOVED_FROM_STAGE, this.removeEvent ,false,0,true);
}
private function removeEvent(evt:Event):void
{
this.timerObj.removeEventListener(TimerEvent.TIMER, this.timerHandler);
this.removeEventListener(Event.REMOVED_FROM_STAGE, this.removeEvent);
}
private function inti(evt:Event):void
{
var xmlPath:String = (this.loaderInfo.parameters.xmlPath != null)?this.loaderInfo.parameters.xmlPath : "xml/mainBanner.xml.php";
var pageNum:uint = (this.loaderInfo.parameters.pageNum != null)?parseInt(this.loaderInfo.parameters.pageNum,10) : 0;
this.removeEventListener(Event.ADDED_TO_STAGE, this.inti);
if(pageNum != 0) return;
trace(xmlPath);
this.parsXML.loadXML(this.ReqVar.xmlURL(xmlPath));
}
private function xmlHandler(evt:Event):void
{
switch(evt.type){
case xmlLoader.XML_LOADERCOMPLETE :
this.xmlFnc(evt.target.xmlDoc);
break;
case xmlLoader.XML_LOADERERROR :
break;
case xmlLoader.XML_LOADERFAILURE :
break;
}
this.parsXML.removeEventListener(xmlLoader.XML_LOADERCOMPLETE, this.xmlHandler);
this.parsXML.removeEventListener(xmlLoader.XML_LOADERFAILURE, this.xmlHandler);
this.parsXML.removeEventListener(xmlLoader.XML_LOADERERROR, this.xmlHandler);
}
private function xmlFnc(dXML:XML):void
{
this._totalCunt = dXML.l.i.length();
this._loadCunt = 0;
this.timerObj.delay = Number(dXML.l.@speed)*1000;
this.effectTime = Number(dXML.l.@effectTime);
for(var i:uint=0;i<this._totalCunt;++i){
this.Img_arr[i] = new ImgLoadToBitmap(this.ReqVar.imgURL(dXML.l.i[i].e.(@id=="imgPath").toString()));
this.Img_arr[i].link = this.ReqVar.imgURL(dXML.l.i[i].e.(@id=="link").toString());
this.Img_arr[i].target = dXML.l.i[i].e.(@id=="link").@target.toString();
this.Img_arr[i].addEventListener(ImgLoadToBitmap.LOADCOMPLATE, this.loadComp, false,0,true);
}
}
private function loadComp(evt:Event):void
{
evt.target.removeEventListener(ImgLoadToBitmap.LOADCOMPLATE, this.loadComp);
this._loadCunt++;
if (this._loadCunt == this._totalCunt) this.displayImg();
}
private function displayImg():void
{
this.Banner_spr = new FadeOut(this.Img_arr, "easeOutExpo",this.effectTime,null,new BlurFilter(0,0,1));
this.Banner_spr.x = 0;
this.Banner_spr.y = 26;
this.Banner_spr.buttonMode = true;
this.addChildAt(this.Banner_spr,0);
this.Banner_spr.addEventListener(MouseEvent.ROLL_OUT, this.mouseHandler, false,0,true);
this.Banner_spr.addEventListener(MouseEvent.ROLL_OVER, this.mouseHandler, false,0,true);
this.Banner_spr.addEventListener(MouseEvent.CLICK, this.mouseHandler, false,0,true);
this.timerObj.start();
}
private function timerHandler(evt:TimerEvent):void
{
this.currentNum = (this.currentNum+1)%this.Img_arr.length;
this.Banner_spr.bitChange(this.currentNum);
}
private function mouseHandler(evt:MouseEvent):void
{
switch(evt.type){
case MouseEvent.ROLL_OUT :
this.timerObj.start();
break;
case MouseEvent.ROLL_OVER :
this.timerObj.stop();
this.Banner_spr.buttonMode = (this.Img_arr[this.currentNum].link.url != "")?true:false;
break;
case MouseEvent.CLICK :
if(this.Img_arr[this.currentNum].link.url == "") return;
navigateToURL(this.Img_arr[this.currentNum].link,this.Img_arr[this.currentNum].target);
break;
}
}
}
}
보시면..... 검색 인풋 박스가 활성화가 안됩니다.
급한건데 ㅠ 도저히 해결책을 모르겠네요 플래시 메뉴가 덮고 있는데...플래시 소스를 아무리 봐도 모르겠네요.. 혹시 봐주실 수 있으신분 부탁좀 드리겠습니다.ㅠ
액션 3.0이고요.. 소스 첨부합니다.
package src
{
import common.ImgLoadToBitmap;
import common.xmlLoader;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.filters.BlurFilter;
import flash.net.navigateToURL;
import flash.utils.Timer;
import src.common.Req;
import transition.FadeOut;
import transition.bannerImg;
public class MainBanner extends Sprite
{
private var Banner_spr:bannerImg;
private var timerObj:Timer;
private var Img_arr:Array;
private var _totalCunt :uint;
private var _loadCunt :uint;
private var currentNum :uint;
private var effectTime :Number;
private var ReqVar:Req;
private var parsXML:xmlLoader;
public function MainBanner()
{
super();
this.stage.align = StageAlign.TOP;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
this.Img_arr = new Array();
this.currentNum = 0;
this.timerObj = new Timer(0);
this.ReqVar = new Req();
this.parsXML = new xmlLoader();
this.addEvent();
}
private function addEvent():void
{
this.parsXML.addEventListener(xmlLoader.XML_LOADERCOMPLETE, this.xmlHandler, false,0,true);
this.parsXML.addEventListener(xmlLoader.XML_LOADERFAILURE, this.xmlHandler, false,0,true);
this.parsXML.addEventListener(xmlLoader.XML_LOADERERROR, this.xmlHandler, false,0,true);
this.timerObj.addEventListener(TimerEvent.TIMER, this.timerHandler, false,0,true);
this.addEventListener(Event.ADDED_TO_STAGE, this.inti, false,0,true);
this.addEventListener(Event.REMOVED_FROM_STAGE, this.removeEvent ,false,0,true);
}
private function removeEvent(evt:Event):void
{
this.timerObj.removeEventListener(TimerEvent.TIMER, this.timerHandler);
this.removeEventListener(Event.REMOVED_FROM_STAGE, this.removeEvent);
}
private function inti(evt:Event):void
{
var xmlPath:String = (this.loaderInfo.parameters.xmlPath != null)?this.loaderInfo.parameters.xmlPath : "xml/mainBanner.xml.php";
var pageNum:uint = (this.loaderInfo.parameters.pageNum != null)?parseInt(this.loaderInfo.parameters.pageNum,10) : 0;
this.removeEventListener(Event.ADDED_TO_STAGE, this.inti);
if(pageNum != 0) return;
trace(xmlPath);
this.parsXML.loadXML(this.ReqVar.xmlURL(xmlPath));
}
private function xmlHandler(evt:Event):void
{
switch(evt.type){
case xmlLoader.XML_LOADERCOMPLETE :
this.xmlFnc(evt.target.xmlDoc);
break;
case xmlLoader.XML_LOADERERROR :
break;
case xmlLoader.XML_LOADERFAILURE :
break;
}
this.parsXML.removeEventListener(xmlLoader.XML_LOADERCOMPLETE, this.xmlHandler);
this.parsXML.removeEventListener(xmlLoader.XML_LOADERFAILURE, this.xmlHandler);
this.parsXML.removeEventListener(xmlLoader.XML_LOADERERROR, this.xmlHandler);
}
private function xmlFnc(dXML:XML):void
{
this._totalCunt = dXML.l.i.length();
this._loadCunt = 0;
this.timerObj.delay = Number(dXML.l.@speed)*1000;
this.effectTime = Number(dXML.l.@effectTime);
for(var i:uint=0;i<this._totalCunt;++i){
this.Img_arr[i] = new ImgLoadToBitmap(this.ReqVar.imgURL(dXML.l.i[i].e.(@id=="imgPath").toString()));
this.Img_arr[i].link = this.ReqVar.imgURL(dXML.l.i[i].e.(@id=="link").toString());
this.Img_arr[i].target = dXML.l.i[i].e.(@id=="link").@target.toString();
this.Img_arr[i].addEventListener(ImgLoadToBitmap.LOADCOMPLATE, this.loadComp, false,0,true);
}
}
private function loadComp(evt:Event):void
{
evt.target.removeEventListener(ImgLoadToBitmap.LOADCOMPLATE, this.loadComp);
this._loadCunt++;
if (this._loadCunt == this._totalCunt) this.displayImg();
}
private function displayImg():void
{
this.Banner_spr = new FadeOut(this.Img_arr, "easeOutExpo",this.effectTime,null,new BlurFilter(0,0,1));
this.Banner_spr.x = 0;
this.Banner_spr.y = 26;
this.Banner_spr.buttonMode = true;
this.addChildAt(this.Banner_spr,0);
this.Banner_spr.addEventListener(MouseEvent.ROLL_OUT, this.mouseHandler, false,0,true);
this.Banner_spr.addEventListener(MouseEvent.ROLL_OVER, this.mouseHandler, false,0,true);
this.Banner_spr.addEventListener(MouseEvent.CLICK, this.mouseHandler, false,0,true);
this.timerObj.start();
}
private function timerHandler(evt:TimerEvent):void
{
this.currentNum = (this.currentNum+1)%this.Img_arr.length;
this.Banner_spr.bitChange(this.currentNum);
}
private function mouseHandler(evt:MouseEvent):void
{
switch(evt.type){
case MouseEvent.ROLL_OUT :
this.timerObj.start();
break;
case MouseEvent.ROLL_OVER :
this.timerObj.stop();
this.Banner_spr.buttonMode = (this.Img_arr[this.currentNum].link.url != "")?true:false;
break;
case MouseEvent.CLICK :
if(this.Img_arr[this.currentNum].link.url == "") return;
navigateToURL(this.Img_arr[this.currentNum].link,this.Img_arr[this.currentNum].target);
break;
}
}
}
}
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기
댓글 2개
아래 링크를 참조해보세요 ~
http://www.saybox.co.kr/bbs/board.php?bo_table=css&wr_id=15
하단에 있는 아이가 위에 겹쳐진 div 박스때문에 인식이 안된다거나 하는 문제요..
겹쳐지는 div 박스 하단은 거의 배경으루 많이 사용하지요.
저도 이거때문에 무지 고생했거든요..