11月 242013
 

有些时候,navigateToURL会失效。也就是打不开你所想要的窗口。这个和浏览器有关系,似乎还和Embed里边的标签也有关系。突然想到一个问题,将swf嵌入到浏览器中,想要浏览器打开的,swf加载完毕,焦点放在swf的输入文本上(输入光标会闪动)。这个也和Embed里边的wmode标签有关系。这里可以设置这个标签属性为非默认的。还有就是做一个假的光标闪动。有时候,即使将焦点放在了输入文本上,输入文本的光标也不会闪动的。至于还有一种做法,就是用flash加载完毕后,call js那边,js那边再来将call flash这边,再将焦点指定。还是回到这里的问题。失效了怎么办。用ExternalInterface。这个东东真有用,桥梁呀。具体做法:

先通过 Capabilities 获取浏览器的类型。然后判断是否为 ActiveX。如果这样,请走这条路:ExternalInterface.call(“window.open”, url ); 这里的url是你想要打开的窗口。如果不是,请走这条路:navigateToURL(new URLRequest(url), “_blank”);

           if (Capabilities.playerType == "ActiveX")
	   {
		ExternalInterface.call("window.open", url );
	   }
	   else
	   {
		navigateToURL(new URLRequest(url), "_blank");
           }

 

11月 232013
 


点击进入全画面

使用方法:
1.下载qqeg.swf。
2.第一种方法:在其目录的上一层,建立asset文件夹。在asset文件夹中,放data.xml.该XML的节点情况如下XML中所示。
3.第二种方法:在别的路径下,放data.xml.并通过get方式将data.xml的路径(一般是绝对路径)指向URL的key。这里是url。
eg:http://viniapp.duapp.com/demo/qqeg.swf?url=http://viniapp.duapp.com/demo/asset/data.xml
4.注意一点,图片的宽高在这里是固定死了。宽是1000,高度是330.宽度稍微有点出入也没问题。

xml的节点配置:

<?xml version="1.0" encoding="UTF-8"?>
<qq>
	<shqq index= "1" label = "上海娱乐" data = "2013/11/23">
		<item>
			<image>http://viniapp.duapp.com/demo/asset/image/01.jpg</image>
			<info>徐怀钰懒理官非沈阳捞金 顶大妈头扮清纯</info>
			<link> http://sh.qq.com/a/20131124/002472.htm#p=1 </link>
		</item>
		
		<item>
			<image>http://viniapp.duapp.com/demo/asset/image/02.jpg</image>
			<info>第50届金马奖众星乱花眼 大牌云集挨个数</info>
			<link> http://sh.qq.com/a/20131124/001978.htm#p=1 </link>
		</item>
		
		<item>
			<image>http://viniapp.duapp.com/demo/asset/image/03.jpg</image>
			<info>陈红陈凯歌16岁儿子近照曝光 现在英国读书</info>
			<link> http://sh.qq.com/a/20131124/003406.htm </link>
		</item>
		
		<item>
			<image>http://viniapp.duapp.com/demo/asset/image/04.jpg</image>
			<info>亚姐佳丽泳装亮相见真章 朱盈盈落选港姐战亚姐</info>
			<link> http://sh.qq.com/a/20131124/003611.htm </link>
		</item>
		
		<item>
			<image>http://viniapp.duapp.com/demo/asset/image/05.jpg</image>
			<info>前央视名嘴方宏进18岁女儿近照 曾公开怒斥父亲</info>
			<link> http://sh.qq.com/a/20131124/004139.htm </link>
		</item>
    </shqq>
</qq>

 

 Posted by at 下午11:56
11月 212013
 

有的时候,就很特别。不去获取URL地址里边的get方式过来的参数,而要获取整个的URL地址。这个时候怎么办呢。请用这个:

encodeURI(ExternalInterface.call("function getUrl(){return window.location.href;}"))

 

11月 192013
 

年年花不同,网页游戏广告特别多。一些物体随鼠标小范围移动的效果特别常见,另一种是大对象移动(对象的宽或高大于舞台的情况)。这两种类型的移动的算法差不多。下边是大对象移动的算法。

在这里,所移动的是一个范围。通过缓动来实现对象的展示。因此,对于大对象的移动,初始化的时候,让对象居中,并先一步计算对象移动的范围。这里移动的范围是指对象在x轴和y轴方向移动的距离一半。

a.先让对象居中,记录对象的初始坐标,记录对象需要移动的范围。

b.然后,计算对象移动的比例。

c.缓动改变对象的位置。

 

贴出效果和代码:

 

Continue reading »

11月 192013
 

年年花不同,网页游戏广告特别多。一些物体随鼠标小范围移动的效果特别常见。还有一种是大对象移动(对象的宽或高大于舞台的情况)。这两种类型的移动的算法差不多。

a.先记录对象的初始坐标。(当对象添加到显示对象时,可以人为的设置对象的坐标)。

b.然后,计算对象移动的比例。

c.缓动改变对象的位置。

 

贴出效果和代码:

 

 

Continue reading »

 Posted by at 上午12:21
11月 092013
 

win8.1 32位系统再安装64位系统时,会提示不能不能安装,系统不支持(其他32位系统再装64位系统好像也存在这个问题)。这个时候,去下载一个辅助软件nt6 3.14版本就可以了。

下载地址:http://www.xdowns.com/soft/softdown.asp?softid=57197  。

这里要注意一下。需要将你下载的系统ios文件解药直接复制到系统盘外的其他盘的根目录下。要不,nt6找不到。在安装的时候,有个高级部分。最好在那里将你的系统盘(一般都是C盘)给格式掉。这样就可以将之前的系统全部清理掉,要不之前的系统的文件还保存在你的系统盘。

这里比较偷懒,我安装的的是微软给出的90天试用版。

11月 052013
 

如何将swf里边的Bitmap或矢量图(简称显示对象,因为看得见,摸不着。可以裁剪,变形,旋转等等)生成本地的图片呢。这个

分两种情况,一种是在AIR运行时下,一种是在FlashPlayer下。在AIR运行时下,通过FileStream的writeBytes方法,将ByteArray

写入到本地。如果在FlashPlayer下,则用FileReference的save方法,将ByteArray写入到本地。所以,这个时候,需要将显示对象

编码成需要的ByteArray。这个转化不仅仅数据的转化,而是按照一定的压缩算法的转化(在Flashplayer11.3出现之前,大多利用第

三方类库PNGEnocder来处理的)。因此BitmapData的encode就有作用了。该API返回按照定义的压缩算法写入的ByteArray或直接

按照定义的压缩算法写入ByteArray。

flash.display.BitmapData.encode(rect:Rectangle, compressor:Object, byteArray:ByteArray=null):ByteArray
参数:
rect 要压缩的 BitmapData 对象的区域。
compressor 要使用的压缩程序类型。有效值为:
flash.display.PNGEncoderOptions、
flash.display.JPEGEncoderOptions 和 flash.display.JPEGXREncoderOptions。
byteArray 保存编码图像的输出 ByteArray。

至于如何将其他显示对象转换成BitmapData就不说了。下边分别写出在AIR下和在FlashPlayer下,将BitmapData生成图片的具体

的代码。

AIR下:

var bitmapData:BitmapData = boxList[i].bitmap.bitmapData;   //这里从一个列表里边取的一个BitmapData
var jpegEncoderOptions:JPEGEncoderOptions = new JPEGEncoderOptions(80);
var byteArray:ByteArray = bitmapData.encode(bitmapData.rect,jpegEncoderOptions);

//或 bitmapData.encode(bitmapData.rect,jpegEncoderOptions,byteArray);

var file:File = File.desktopDirectory;  //这里写死了,可以使用File的browse选择你要保存的路径
file = file.resolvePath(file.nativePath + “/image/” + “vini123.jpg”);
var fs:FileStream = new FileStream();
fs.open(file,FileMode.WRITE);
fs.writeBytes(byteArray);
fs.close();

 

FlashPlayer下:

var bitmapData:BitmapData = bitmap.bitmapData;
var jpegEncoderOptions:JPEGEncoderOptions = new JPEGEncoderOptions(80);
var byteArray:ByteArray = bitmapData.encode(bitmapData.rect,jpegEncoderOptions);

var file:FileReference = new FileReference();
file.save(byteArray,“vini123.jpg”);

网站地图