论坛
门户
内部优惠
喜欢
话题
VIP会员
搜索
新浪微博
登录
注册
100%
100%
首页
>
网页设计
>
flash 设计
>
让Flash动画适应任何分辨率的网页
回复
« 返回列表
灯火互联
管理员
注册日期
2011-07-27
发帖数
41778
QQ
火币
41290枚
粉丝
1086
关注
100
加关注
写私信
打招呼
阅读:
9493
回复:
0
让Flash动画适应任何分辨率的网页
楼主
#
更多
只看楼主
倒序阅读
发布于:2012-01-31 23:41
保存
100%
100%
[]
1
本文中我们介绍几种方法,让
Flash动画适应任何分辨率的网页。
方法1.使用thisin
在flash中写:
if (System.capabilities.screenResolutionX>=1024) {
Stage.scaleMode = "noScale";
}
但是必须设置body里面margin的值得都等于0,加CSS到网页也行。
方法2.
也是在FLASH中写AS:
var listen:Object = new Object();
listen.onResize = function(){};
Stage.addListener(listen);
方法3.用System.capabilities.screenResolutionX和System.capabilities.screenResolutionY实现
首先对这两个语句做一下简单讲解:
System.capabilities 对象
System.capabilities 对象可以确定承载 SWF 文件的系统和播放器的功能。这样,您就可以针对不同的格式对内容进行调整。例如,移动电话的屏幕(黑白,100 x 100 像素)就与 1000 x 1000 像素的彩色 PC 屏幕不同。为了向尽可能多的用户提供适当的内容,可以使用 System.capabilities 对象来确定用户所拥有的设备的类型。然后,您可以指定服务器根据不同的设备功能发送不同的 SWF 文件,或者通知 SWF 文件根据设备的功能改变它的播放方式。
1)System.capabilities.screenResolutionX:指示屏幕的水平大小,(指示屏幕最大水平分辨率的整数)其服务器字符串为 R(它返回屏幕的宽度和高度)。
2)System.capabilities.screenResolutionY:指示屏幕的垂直大小,(指示屏幕最大垂直分辨率的整数)其服务器字符串为 R(它返回屏幕的宽度和高度)。
其实System.capabilities 对象还有很多其他的属性,在这里我就不一一介绍了!你到FLASH
软件
的帮助文件中找“动作脚本字典----(字母)S”就能找到!
如果你懒还是得动或者你找不到,也可以这样做关于System.capabilities 对象其他属性摘要,可以使用如下代码输出。
for(var i in System.capabilities){
trace(i+":"+System.capabilities)
}
如果是要在FLASH里作判断,用下面的代码:
loadVariables("http://www.
web
jx.com" ,"_root","post");
/*index.htm为SWF所在的网页*/
if (System.capabilities.screenResolutionX==1024) {
getURL("http://www.webjx.com:1985/1024.htm ");
}else if (System.capabilities.screenResolutionX==800) {
getURL("http://www.webjx.com:1985/800.htm ");
}else if (System.capabilities.screenResolutionX>1024) {
getURL("flashbank.htm");
}
第1页:方法一、二、三
第2页:方法四、五、六
方法4.构建自定义函数CenterPopupMX,利用getURL与
java
script来实现弹出定制大小的居中窗口
MovieClip.prototype.CenterPopupMX = function(theurl, title, w, h, features) {
var sysW = System.capabilities.screenResolutionX;
var sysH = System.capabilities.screenResolutionY;
var centerx = Math.round((sysW/2)-(w/2));
var centery = Math.round((sysH/2)-(h/2));
getURL("javascript :void(window.open(’’"+theUrl+"’’,’’"+title+"’’,’’width="+w+", height="+h+", left="+centerx+",
top="+centery+",screenX="+centerx+", screenY="+centery+","+features+"’’));");
};
PS:你可以从里面得到很多启发!
方法5.在DW中设置高和宽都是100%,然后完全匹配
即使你的swf是1*100大小的。浏览器也会拉伸你的flash不成样子都要填充整个浏览器,关于图形的问题用flash尽量使用矢量图形,如果必须用位图就按照高分辨率下裁剪,高分辨率下都没锯齿了,低分辨率下还会有吗?用FW柔化下不就OK了。
除了在IE6下因为IE6的一个BUG造成可能出现没有填充完全有一部分是空白——这样的情况是很难产生的需要先把IE缩小然后拖动下边框拉长的时候才会出现,一般谁去拉呀。都是直接最大化。
按照我说的设定可以符合任何尺寸(仅仅是windows下5.5和6.0的IE)其他的没测试过!
方法6.使用Azure
是在HTML中加代码
喜欢
0
评分
0
最新喜欢:
淘宝天猫隐藏优惠券地址
回复
100%
发帖
回复
« 返回列表
普通帖
您需要登录后才可以回帖,
登录
或者
注册
100%
返回顶部
关闭
最新喜欢