【问题标题】:How to migrate SWFObject call code?如何迁移 SWFObject 调用代码?
【发布时间】:2010-06-24 09:59:51
【问题描述】:

我有这个遗留代码,它使用旧版本的 SWFObject.js 将 SWF 嵌入到 HTML 中:

var so = new SWFObject("main.swf", "main", "100%", "615", "9.0.115", "#000000");
so.addVariable("deeplink", deeplink);
so.addVariable("cid", cid);
so.addParam("scaleMode", "noscale");
so.addParam("allowScriptAccess", "always");
so.addParam("allowFullScreen", "true");
so.write("flashcontent");

我应该如何为最新的 SWFObject.js 重写它?我试过这个但失败了,我想先排除语法不匹配:

var mainSwfProperties = {
    flashVars : {
        cid : cid,
        deeplink : deeplink
    },
    params : {
        allowFullScreen : "true",
        allowScriptAccess : "true",
        scaleMode : "noscale",
        wmode : "window"
    },
    attributes : {}
};
swfobject.embedSWF("main.swf", "flashcontent", "100%", 615, "9.0.115", null,
    mainSwfProperties.flashVars,
    mainSwfProperties.params,
    mainSwfProperties.attributes
); 

【问题讨论】:

    标签: flash swfobject


    【解决方案1】:

    嗯,我当然认为这会奏效。基本上,flashvars、params 和 attributes 需要是 js 对象。我通常将它们保留为单独的对象,而不是像您设置的那样拥有单个对象。

    <script type="text/javascript">
        var flashvars = {cid:cid, deeplink:deeplink};
        var params = {allowFullScreen:true, allowScriptAccess:true, scaleMode:"noscale", wmode:"window"};
        var attributes = {}
        swfobject.embedSWF("main.swf", "flashcontent", "100%", "615", "9.0.115", null, flashvars, params, attributes);
    </script>
    

    【讨论】:

      【解决方案2】:

      同样来自 swfobject 文档,它期望宽度和高度是字符串,你的高度是一个 int。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-17
        • 2013-08-06
        • 2015-10-21
        • 2014-03-01
        • 1970-01-01
        • 2014-12-01
        • 2013-06-14
        • 1970-01-01
        相关资源
        最近更新 更多