flash 显示 qq客服状态
时间:2022-04-23
本文章向大家介绍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);
box.x = box.y = 10;
//点击图标,以及切换鼠标
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再去请求自己的服务器上的图片,因为自己的服务器能完全控制(包括放置策略文件),所以能解决安全沙箱的问题。
- MVVM(Knockout.js)的新尝试:多个Page,一个ViewModel
- ASP.NET MVC以ModelValidator为核心的Model验证体系: ModelValidatorProviders
- 我所理解的RESTful Web API [设计篇]
- 黑箱难题阻碍了深度学习的普及与发展
- iOS 转场动画探究(一)
- XCode中如何使用事务
- 如何部署编译NDIS驱动的环境(内部资料)
- 深度学习的入门级装机配置推荐
- Self Host模式下的ASP. NET Web API是如何进行请求的监听与处理的?
- GridView绑定小技
- XCode读取Excel数据(适用于任何数据库)
- ObjectDataSource选择业务对象列表为空的探讨
- ASP.NET Web API自身对CORS的支持: CORS授权检验的实施
- 模版引擎XTemplate与代码生成器XCoder(源码)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法