Flash广告播放器研发
2008-04-02 11:06:01来源:互联网 阅读 ()
很多网站都使用了swf格式的flash广告,如何让这些广告更有序的出现,网站建设者们都使用了flash广告播放器,其表现形式也很丰富,但里面所含的技术大同小异。Flash广告播放器播放的广告经常需要更换,因此,使用外部文档导入到广告播放器是一种可行的方法。这些外部文档包括swf、jpg等格式的广告文档、组织数据的xml文档和用来格式化文本的css文档等,这样,更换广告,改变文本的格式就变得很方便。:
准备播放器的素材
创建目录,用于保存相关文档,以播放jpg格式的图片为例,首先准备几张图片,统一放在一个名为"mypic"的目录下,分别命名为1.jpg到n.jpg。
编写外部数据文档
1、编写css文档,新建一个txt文档,输入播放器中的文本格式内容,如字体颜色等。如下所示:
color:#FFFFFF;
font-family:Arial,Helvetica,sans-serif;
font-size:12px;
font-weight:bold;
}
2、编写xml文档,新建一个txt文档,输入相关数据,如下所示:
<infobaseURL="mypic/"delayTime="8">
<picNameid="0"Name="pic1.jpg"><![CDATA[<ahref="http://www.macromedia.com"target="_blank"class="message">信息技术教育第1期</a>]]></picName>
<picNameid="1"Name="pic2.jpg"><![CDATA[<ahref="http://www.macromedia.com"target="_blank"class="message">信息技术教育第2期</a>]]></picName>
<picNameid="2"Name="pic3.jpg"><![CDATA[<ahref="http://www.macromedia.com"target="_blank"class="message">第3张图片</a>]]></picName>
<picNameid="3"Name="pic4.jpg"><![CDATA[<ahref="http://www.macromedia.com"target="_blank"class="message">第4张图片</a>]]></picName>
</info>
编写播放器的类库
播放器要载入多种外部文档,因此,编写自己的一个加载类库是一种好的解决方法,首先建立一个抽象加载类,定义属性、方法及事件,其他的具体加载类都继承此抽象加载类。
1、抽象加载类
importmx.events.EventDispatcher;
classfc.load.AbstractLoad{
privatevardispatchEvent:Function;
publicvaraddEventListener:Function;
publicvarremoveEventListener:Function;
privatevarloadObject:Object;
privatevarloadID:Number;
functiongetBytesLoaded(){
returnloadObject.getBytesLoaded();
}
functiongetBytesTotal(){
returnloadObject.getBytesTotal();
}
privatefunctioncheckProgress(){
varperLoaded:Number=Math.floor(getBytesLoaded()/getBytesTotal()*100);
dispatchEvent({type:"onProgress",value:perLoaded});
endLoad(perLoaded);
}
privatefunctionstartLoad(){
EventDispatcher.initialize(this);
loadID=setInterval(Delegate.create(this,checkProgress),30);
dispatchEvent({type:"onProgress",value:0});
}
privatefunctionendLoad(perLoaded){
if(perLoaded>=100){
dispatchEvent({type:"onComplete",value:loadObject});
clearInterval(loadID);
}
}
}
importmx.utils.Delegate;
classfc.load.XmlextendsAbstractLoad{
privatevarloadObject:XML;
functionXml(){
loadObject=newXML();
loadObject.ignoreWhite=true;
System.useCodepage=true;
}
publicfunctionload(url:String){
loadObject.load(url);
startLoad();
}
}
importmx.utils.Delegate;
classfc.load.CssextendsAbstractLoad{
privatevarloadObject:TextField.StyleSheet;
functionCss(){
loadObject=newTextField.StyleSheet();
}
publicfunctionload(url:String){
loadObject.load(url);
startLoad();
}
}
classfc.load.MovieextendsAbstractLoad{
privatevarloadObject:MovieClip;
functionMovie(mc){
//装载影片等的影片剪辑
loadObject=mc;
}
publicfunctionload(url:String){
loadObject.loadMovie(url);
startLoad();
}
publicfunctionunload(){
loadObject.unloadMovie();
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: FlashAS学习:for循环和退出循环
下一篇: SWF关于远程源和允许跨域数据加载
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash