2010-06-24 2 views
0

У меня есть этот унаследованный код, который встраивает в SWF в HTML, используя старую версию swfobject.js:Как перенести код вызова SWFObject?

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 
); 

ответ

1

Ну, я бы, конечно, думаю, что будет работать. В принципе, flashvars, params и атрибуты должны быть js-объектами. Я обычно оставляю их как отдельные объекты, а не как один объект, как вы установили uo.

<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> 
0

Также от SWFObject документации, он ожидает, что ширина и высота быть строки, вы имеете высоту как межд там.

+0

бета-версия SWFObject 2.3 исправляет этот https://github.com/swfobject/swfobject – pipwerks