快速业务通道

Flash广告播放器开发

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-08

  很多网站都使用了swf格式的Flash广告,如何让这些广告更有序的出现,网站建设者们都使用了flash广告播放器,其表现形式也非常丰富,但里面所含的技术大同小异。Flash广告播放器播放的广告经常需要更换,因此,使用外部文件导入到广告播放器是一种可行的方法。这些外部文件包括swf、jpg等格式的广告文件、组织数据的XML文件和用来格式化文本的CSS文件等,这样,更换广告,改变文本的格式就变得非常方便。:
准备播放器的素材
创建目录,用于保存相关文件,以播放jpg格式的图片为例,首先准备几张图片,统一放在一个名为"mypic"的目录下,分别命名为1.jpg到n.jpg。
编写外部数据文件
1、编写css文件,新建一个txt文件,输入播放器中的文本格式内容,如字体颜色等。如下所示:
.message{
color:#FFFFFF;
font-family:Arial,Helvetica,sans-serif;
font-size:12px;
font-weight:bold;
}将上面写好的文件保存,把文件名改为styles.css。
2、编写xml文件,新建一个txt文件,输入相关数据,如下所示:
<?xmlversion="1.0"encoding="gb2312"?>
<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>同样保存为myinfo.xml文件。
编写播放器的类库
播放器要载入多种外部文件,因此,编写自己的一个加载类库是一种好的解决方法,首先建立一个抽象加载类,定义属性、方法及事件,其它的具体加载类都继承此抽象加载类。
1、抽象加载类
importmx.utils.Delegate;
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);
}
}
} 2、加载xml的类
importfc.load.AbstractLoad;
importmx.utils.Delegate;
classfc.load.XmlextendsAbstractLoad{
privatevarloadObject:XML;
functionXml(){
loadObject=newXML();
loadObject.ignoreWhite=true;
System.useCodepage=true;
}
publicfunctionload(url:String){
loadObject.load(url

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号