[AS3]as3.0动态显示qq在线状态
[AS3]as3.0动态显示qq在线状态,前几天看到有园友写了一篇“ flash查看对方qq是否在线 ”,正好今天有一个朋友搞flash全站,想使用这个功能,但是有些小要求,点击图标后,要求弹出QQ对话框
前几天看到有园友写了一篇“ flash查看对方qq是否在线 ”,正好今天有一个朋友搞flash全站,想使用这个功能,但是有些小要求,点击图标后,要求弹出QQ对话框,于是改进了一下:
- package
- {
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.events.MouseEvent;
- import flash.globalization.StringTools;
- import flash.net.URLRequest;
- import flash.net.navigateToURL;
- import flash.display.Bitmap;
- import flash.display.Loader;
- import flash.ui.Mouse;
- import flash.ui.MouseCursor;
- public class Main extends Sprite
- {
- private var qq:String = "278919507";
- private var loader:Loader = new Loader();
- private var bit:Bitmap ;
- private var box:Sprite;
- public function Main():void
- {
- if (stage) init();
- else addEventListener(Event.ADDED_TO_STAGE, init);
- }
- private function init(e:Event = null):void
- {
- removeEventListener(Event.ADDED_TO_STAGE, init);
- box = new Sprite();
- upData();
- }
- public function upData():void
- {
- loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCom);
- var sUrl:String = "http://wpa.qq.com/pa?p=2:" + qq + ":41?" + Math.random();
- trace(sUrl);
- loader.load(new URLRequest(sUrl));
- }
- private function onCom(e:Event) :void
- {
- bit = Bitmap(loader.content);
- bit.height = 22;
- bit.width = 74;
- box.addChild(bit);
- addChild(box);
- boxbox.x = box.y = 10;
- //cuplayer.com提示点击图标,以及切换鼠标
- box.addEventListener(MouseEvent.CLICK, onClick);
- box.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
- box.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
- }
- private function onClick(e:MouseEvent):void
- {
- var sUrl:String = "http://wpa.qq.com/msgrd?v=3&uin=" + qq + "&site=qq&menu=yes";
- navigateToURL(new URLRequest(sUrl),"_blank");
- trace("test");
- }
- private function onMouseOver(e:MouseEvent):void
- {
- Mouse.cursor=MouseCursor.BUTTON;
- }
- private function onMouseOut(e:MouseEvent):void
- {
- Mouse.cursor=MouseCursor.ARROW;
- }
- }
- }
在flash cs5环境下一切正常,但是单独运行swf时会失败:并不能加载图片。原因是wpa.qq.com下没有策略文件,默认的安全沙箱保护机制并不允许跨域加载图片。
于是用aspx做了个中转,在自已的服务器上先把qq的图标下载到服务器,然后as3再去请求自己的服务器上的图片,因为自己的服务器能完全控制(包括放置策略文件),所以能解决安全沙箱的问题。
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...