Blog

让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.xxxx.com" ,"_root","post"); /*index.htm为SWF所在的网页*/ if (System.capabilities.screenResolutionX==1024) { getURL("http://www.xxxx.com:1985/1024.htm "); }else if (System.capabilities.screenResolutionX==800) { getURL("http://www.xxxx.com:1985/800.htm "); }else if (System.capabilities.screenResolutionX>1024) { getURL("flashbank.htm"); } 4.构建一个自定义函数CenterPopupMX,利用getURL与javascript来实现弹出定制大小的居中窗口 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%然后完全匹配就ok了 即使你的swf是1*100大小的。浏览器也会拉伸你的flash不成样子都要填充整个浏览器,关于图形的问题用flash尽量使用矢量图形,如果必须用位图就按照高分辨率下裁剪,高分辨率下都没锯齿了,低分辨率下还会有吗?用FW柔化下不就OK了。 除了在IE6下因为IE6的一个BUG造成可能出现没有填充完全有一部分是空白——这样的情况是很难产生的需要先把IE缩小然后拖动下边框拉长的时候才会出现,一般谁去拉呀。都是直接最大化。 按照我说的设定可以符合任何尺寸(仅仅是windows下5.5和6.0的IE)其他的没测试过! 6.Azure的办法: 是在HTML中加代码 // <![CDATA[ //resolutionRedirect Begin if (window.screen){ var w = screen.width; if(w1024){ openWindow(home.html,1008,698,jinyu) window.close(); } }//resolutionRedirect End // ]]>

Words translated by CCJK

146,096,379

Request a call or contact us

  •  

    Call ccjk.support for professional assistance

  •  

    Click Here to leave us a message and be as detailed as possible.

We are Certified

Our Client Satisfaction

rating for previous quarte

4.00
  •  
    Inquiry Form

    Please take few minutes to fill
    inquiry form and get Free Quote

  •  
    Request a Call

    Click to receive Free Call, Our
    Representative will contact you

  •  
    Leave a Message

    Please leave us a message and
    be as detailed as possible

Over 95% of our clients recommend our language services to others


Copyright © CCJK Technologies Co., Ltd. 2000-2017. All rights reserved.
TOP