• SWFObject参数,SWFObject使用方法


    swfobject.embedSWF(swfUrl, id, width, height, version, expressInstallSwfurl, flashvars, params, attributes)有5个必须的参数和4个可选的参数:

    swfUrl(String,必须的)指定SWF的URL。 id(String,必须的)指定将会被Flash内容替换的HTML元素(包含你的替换内容)的id。 width(String,必须的)指定SWF的宽。 height(String,必须的)指定SWF的高。 version(String,必须的)指定你发布的SWF对应的Flash Player版本(格式为:major.minor.release)。 expressInstallSwfurl(String,可选的)指定express install SWF的URL并激活Adobe express install [ http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=6a253b75 ]。 flashvars(String,可选的)用name:value对指定你的flashvars。 params(String,可选的)用name:value对指定你的嵌套object元素的params。 attributes(String,可选的)用name:value对指定object的属性。

     

    head代码里都加载了一个swfobject.js用于在HTML中方便插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块,该模块中的JavaScript脚本能够自动检测PCMac机器上各种主流浏览器对Flash插件的支持情况。

    目前最新的版本是2.2,这里可以下载最新版的SWFObject:

    http://code.google.com/p/swfobject/

    发现用它的好处多多啊:

    1.IE中没有讨厌的虚框问题了。

    2.提供了完善的版本检测功能,如果版本不兼容则显示其他东西,比如图片或文字。

    3.易于使用,只要在页面头加载一个.js 文件,然后HTML 写一个容器,里面放普通的文本或图片(用于无法显示Flash 时显示),最后用脚本来替换这个元素里面的内容为Flash

    4.使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。

    5.能够避免HTMLXHTML中出现objectembed等非标准标签,从而符合更加标准。

    只需要包含swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Flash媒体资源了。下面是一个最简单的范例:

      

     

     

    首先,我们要为SWF资源预留一个HTML结点。这个HTML结点内的所有内容都会在客户端被Flash资源替换,当客户端没有安装Flash播放器的时候,这些内容会显示出来。这一特色在SEO以及对用户体验方面非常有必要。

    var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);

    创建一个新的SWFObject实例,并且传入一下参数:

    swf - SWF文件路径

    id - 您为这个SWF文件分配的id值,它将用于给embedobject标签设定name属性,以便于可以支持swliveconnect的功能,如动态传入变量

    width - 宽度

    height - 高度

    version - FlashPlayer需要的版本号,它可以详细到'主版本号.小版本号.细节',例如:"6.0.65"。一般地,我们只需传入主版本即可,例如:"6"

    background-color - Flash资源的背景色,16进制格式

    此外,还有如下可选参数:

    quality - 画面质量,默认为"high"

    xiRedirectUrl - 详见ExpressInstall相关

    redirectUrl - 没有安装相应版本的播放器后自动跳转的目标地址

    detectKey - 这是当忽略检测时,SWFObject将去url地址中查找的变量,默认值为“detectflash”,后续有详细介绍

    so.write("flashcontent");Flash资源应用到DOM里,在浏览器显示出来。

    SWFObject

     

     

    之间加入多个参数来实现各个效果,参数很多,但是实际只要一点点。我们可以看下这样的代码:

     

     

       var so = new SWFObject("movie.swf", "mymovie", "400", "100%", "8", "#336699");

       so.addParam("quality", "low");

       so.addParam("wmode", "transparent");

       so.addParam("salign", "t");

       so.addVariable("variable1", "value1");

       so.addVariable("variable2", "value2");

       so.addVariable("variable3", "value3");

       so.addVariable("variable1", getQueryParamValue("variable1"));

       so.addVariable("variable2", getQueryParamValue("variable2"));

       so.write("flashcontent");

     

    这段代码给出了SWFObject的常用参数:

       var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);

       so.addParam("Param1", "Param2");

       so.addParam("Param3", "Param4");

       so.addParam("Param5", "Param6");

       so.addVariable("variable1", "value1");

       so.addVariable("variable2", "value2");

       so.addVariable("variable3", "value3");

       so.addVariable("variable1", getQueryParamValue("variable1"));

       so.addVariable("variable2", getQueryParamValue("variable2"));

       so.write("content");

    解释一下这些参数的作用:

       var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);         

    //这段是SWFObject必须的基本参数,所有SWFObject都必须包含的。

       so.addParam("Param1", "Param2");  

     //这里是给Flash添加内联参数,可以实现诸如背景透明之类的效果。依照需求添加就可以了,参数和emded/object标签是一样的代码,下同。

       so.addParam("Param3", "Param4");

       so.addParam("Param5", "Param6");

       so.addVariable("variable1", "value1");   

     //这里是给Flash添加FlashVar,这是以FlashVar的方式给FlashRoot添加变量,对于Number型变量在Flash端需要做类型转换。

       so.addVariable("variable2", "value2");

       so.addVariable("variable3", "value3");

       so.addVariable("variable1", getQueryParamValue("variable1"));   //Flash获取URL变量对于url?arg1=test1&arg2=test2这样用GET方式传递变量的URL,我们可以用getQueryParamValue方法来获取变量。

       so.addVariable("variable2", getQueryParamValue("variable2"));

       so.write("content");    

    //这里是至关重要的一个地方,用一段特定内容取代Flash无法显示时的内容。可以事先在CSS里定义好样式,在文档里使用div标签写出来。

  • 相关阅读:
    vue实践推荐
    angularjs实现checkbox的点击-全选功能-选中数据
    是你需要的前端编码风格吗?
    webpack--前端性能优化与Gzip原理
    基于verdaccio的npm私有仓库搭建
    使用uni-app开发微信小程序
    《JavaScript设计模式与开发实践》-- 迭代器模式
    《JavaScript设计模式与开发实践》-- 发布-订阅模式
    《JavaScript设计模式与开发实践》-- 策略模式
    《JavaScript设计模式与开发实践》-- 代理模式
  • 原文地址:https://www.cnblogs.com/visense/p/3209383.html
Copyright © 2020-2023  润新知