HTML 使用swfObject

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML 使用swfObject相关的知识,希望对你有一定的参考价值。

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Set Title</title>

<link href="css/flash_style.css" rel="stylesheet" type="text/css">

<script language="javascript" type="text/javascript" src="js/swfobject.js"></script>

</head>

<body>
<center>

	<div id="content">(install flash player)</div>
	
	<script type="text/javascript">
		// <![CDATA[
	
		var mySWFObject = new SWFObject("flash/index.swf", "flashID", "950px", "600px", "8", "#CCCCCC");
		
		mySWFObject.addParam("scale", "noscale");
		mySWFObject.addParam("menu", "false");
		mySWFObject.addParam("quality", "high");
		mySWFObject.addParam("base", ".");
				
		mySWFObject.write("content");

		// ]]>
	</script>
	
</center>
</body>
</html>

VideoJS 和 swfobject 嵌入问题

【中文标题】VideoJS 和 swfobject 嵌入问题【英文标题】:VideoJS and swfobject embedding issue 【发布时间】:2011-06-10 14:05:23 【问题描述】:

我正在使用 VideoJS 和 SWFObject 嵌入视频。这个想法是 VideoJS 将尝试使用 HTML5 视频标签,如果不支持它,它将回退到 Flash。我正在尝试使用 SWFObject 嵌入 Flash 以用作后备。以下是相关代码:

<ul id="client_gallery">
<% if PortfolioMedia %>
    <% control PortfolioMedia %>
    <% if VideoFile %>
        <li style="width:$VideoWidthpx;height:$VideoHeightpx">
            <div class="video-js-box">
                <video class="video-js"   controls preload>
                    <source src="$VideoFile.URL" type="video/mp4" />
                    <div id="flash_player"></div>
                    <script type="text/javascript">
                    var flashvars = 
                        'file': "$VideoFile.URL"
                    ;

                    var params = 
                        'allowfullscreen': "true",
                        "wmode": "transparent"
                    ;

                    var attr = 
                        'id': 'f_player',
                        'name': 'f_player'
                    ;

                    swfobject.embedSWF('/portfolio/javascript/jwplayer/player.swf', 'flash_player', '$VideoWidth', '$VideoHeight', '9', '', flashvars, params, attr, function(e)
                    );
                    </script>
                </video>
            </div>
        </li>
        <% end_if %>
    <% end_control %>
<% end_if %>
<script type="text/javascript">
    $(function()
        VideoJS.setupAllWhenReady();
    );
</script>
</ul>

另一个符号来自 CMS Silverstripe,与本期无关。这适用于 Chrome、Safari 和 IE,但不适用于 Firefox。在 Firefox 中,我得到的只是一个空容器,好像它试图使用 &lt;video&gt; 标记但无法加载兼容的源。

它根本没有嵌入 Flash,而且我知道 swfobject 代码可以正常工作,因为如果我只使用 swfobject 代码,而不是在 &lt;video&gt; 标记内,它可以完美运行。所以问题是:VideoJS 不会回退到 swfobject 嵌入的代码。但为什么呢?

【问题讨论】:

【参考方案1】:

videojs 已经内置了 Flash 支持作为后备。如果您想使用自己的 Flash 播放器,可以在选项中进行更改,例如:

<script type="text/javascript">
  VideoJS.options.flash.swf = "pathtoyourplayer.swf";
  VideoJS.options.flash.flashVars = youroptions;
  VideoJS.options.flash.params = youtparams;
  VideoJS.options.flash.attributes = yourattributes;
</script>

..

<video ...>
  <source src=".." type="video/mp4" />
</video>

附加:swfObject 已包含在 videojs 中。

【讨论】:

是的。尽管他使用的 Video.js 版本是旧版本(例如“setupAllWhenReady”),但 Flash 播放器已作为嵌入代码的一部分包含在内。可能最好从升级开始。

以上是关于HTML 使用swfObject的主要内容,如果未能解决你的问题,请参考以下文章

VideoJS 和 swfobject 嵌入问题

使用 SWFObject 加载 SWF 时调整其大小

如何在 swfobject.embedSWF 中使用 flashvars 属性?

HTML swfobject flash嵌入

HTML xhtml doc结构中的swfObject。

HTML 完整页面模板xhtml css swfobject