提供替代Flash内容

时间:2012-06-18 14:05:39

标签: javascript html flash

我正在调整Flash页面以在Flash不可用时显示替代内容,但是,它使用的方法对于包含大量内容的完整备用页面并不是非常理想。目前,替代内容的服务方式如下:

var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
if(hasRightVersion) {  // if we've detected an acceptable version
    if (AC_FL_RunContent == 0) {
        alert("This page requires AC_RunActiveContent.js. In Flash, run \"Apply Active Content Update\" in the Commands menu to copy AC_RunActiveContent.js to the HTML output folder.");
    } else {
        // embed the flash movie
        AC_FL_RunContent(
                'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0',
                'width', '1000',
                'height', '688',
                'src', 'wot',
                //etc, etc...
        ); //end AC code
    }
} else {  // flash is too old or we can't detect the plugin
    var alternateContent =
            '<p>&nbsp;</p>'
            + '<p>This website requires a newer version of the Adobe Flash Player.</p>'
            + '<p>&nbsp;</p>'
            + '<p>&nbsp;</p>'
            + '<p><a href="http://www.macromedia.com/go/getflash/">Get the Latest Flash Player here.</a></p>'
            + '<p><a href="http://www.macromedia.com/go/getflash/"><img src="images/get_flash_player.gif" alt="Download Flash Player" width="88" height="31" border="0" /></a></p>'
            + '<p>&nbsp;</p>'
            + '<p>&nbsp;</p>';
    document.write(alternateContent);  // insert non-flash content
}

然而,我想要提供的新内容远远大于“获取Flash”消息。

有没有更好的方法来提供大量的HTML(和javascript)?通过某种包括?我不确定我想做任何类型的重定向 - 或者我是吗?

2 个答案:

答案 0 :(得分:2)

最好的方法是使用SWFObject,

如果你的备用系统里面有一个div,那么如果安装了flash播放器,则使用SWFObject加载flash中的flash播放器

请看:如何在此页面上使用SWFObject动态发布嵌入Flash Player内容:http://code.google.com/p/swfobject/wiki/documentation

在:如何使用HTML配置Flash内容?

flashvars devicefont (more info) 
allowscriptaccess (more info here and here)
seamlesstabbing (more info)
allowfullscreen (more info)
allownetworking (more info)

您需要将它们输入参数

var params = {allowscriptaccess:'always', allownetworking:'allways'}

然后将婴儿车送入您的装载线

答案 1 :(得分:0)

除了HotHeadMartin的回答:这里有一个很好的代码生成器:
http://www.bobbyvandersluis.com/swfobject/generator/index.html

只需选择“动态发布”并填写一些文字字段即可。