本文主要是介绍Adobe TechNote:tn_16417(Using FlashVars to pass variables to a SWF),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
翻译Adobe TechNote: tn_16417通过FlashVars为SWF传参数
简介
Macromedia Flash Player的FlashVars属性提供了一个把参数导入一个首次初始化的Flash视频top level的有效途径。该特性要求Flash Player 6或其后来版本的支持。如需获得如何给Flash Player 6之前版本传参数,请参考下文的Additional Information.
FLASHVARS
放置于OBJECT(ACTIVEX)和EMBED(为Netscape和MacintoshInternet浏览器)标签内,属性FlashVars可以用于为Flash视频导入根目录级变量(root level variables)。所有被导入的变量都是在Flash视频第一帧播放之前生成(create)。(导入变量)字符串的格式为:一组由&分隔开的name=variable的组合。特殊或/和不可打印字符用%紧跟2个16进制数字(注:个人理解,非A,B,C,D,E,F)换码(escape)表示。单一一个空格可以用+表示。更多的关于URL的表示问题,请参考 URL Encoding: Reading special characters from a text file(TechNote tn_14143)。
所有的浏览器都支持最长64KB (65535 bytes)的字符串表示的URL。为了支持所有的浏览器,FlashVars必须同时放置于OBJECT和EMBED之内。
<!-- Object标签举例 -->
< OBJECT >
< PARAM NAME =FlashVars VALUE ="foo=Hello%20World¶graph=first+line%0Dsecond+line" >
</ OBJECT >
<!-- Embed标签举例 -->
< EMBED src ="display.swf" FlashVars ="foo=Hello%20World¶graph=first+line%0Dsecond+line" ... (other parameters) >
</ EMBED >
< OBJECT >
< PARAM NAME =FlashVars VALUE ="foo=Hello%20World¶graph=first+line%0Dsecond+line" >
</ OBJECT >
<!-- Embed标签举例 -->
< EMBED src ="display.swf" FlashVars ="foo=Hello%20World¶graph=first+line%0Dsecond+line" ... (other parameters) >
</ EMBED >
对给字符串编码和页面包含它采用的是相同的(方式)。Internet Explorer负责提供在Windows系统上UTF-16兼容的字符串;同样,Netscape会为Flash播放器提供UTF-8编码的字符串。
附加信息
当然,不用FlashVars,也可以通过HTML标签的形式,在查询字符串里,将它(ariables)附加到SWF的URL之后为该Flash播放器(SWF)传递此变量。 可以参考 Different approaches to setting variables in a Flash movie (TechNote tn_14253)的简单例子。该例子也提出了在你立即该变量是的一个问题,因为在大量的数据从服务器上请求到来之前,SWF必须要下载、播放(play)。
这篇关于Adobe TechNote:tn_16417(Using FlashVars to pass variables to a SWF)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!