1. object + embed 传统的方法
优点:浏览器兼容性好,是 Macromedia 一直以来的官方方法
缺点:
a.embed 标签是不符合 W3C 的规范的,无法通过验证。当然,如果你不在乎什么规范不规范,另当别论。
b.微软由于种种原因,在 sp2 后限制了 IE 的 ActiveX 的使用模式,就是在页面中的 ActiveX 有一个虚框,需要用户点击一次才能正常交互。Flash是作为一个 ActiveX 嵌入到网页中的,所以它也会受牵连,只有通过 JS 嵌入 Flash 才能解决这个问题。
c.没有 Flash 版本检测,如果版本浏览器的flash插件版本不够,或者不能正常显示你的 swf 文件,或者会弹出一个 ActiveX 的确认安装的框。
<object id="forfun" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="300"
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0">
<param name="movie" value="/seufld/seufld/flash/focus2.swf">
<param name="quality" value="high">
<param name="bgcolor" value="#F0F0F0">
<param name="menu" value="false">
<param name="wmode" value="opaque"><!--Window|Opaque|Transparent-->
<param name="FlashVars" value="">
<param name="allowScriptAccess" value="sameDomain">
<embed id="forfunex" src="/seufld/seufld/flash/focus2.swf"
width="400"
height="300"
align="middle"
quality="high"
bgcolor="#f0fff8"
menu="false"<!--添加后,ff下才正常-->
play="true"
loop="false"
FlashVars=""
allowScriptAccess="sameDomain"
type="application/x-shockwave-flash"
pluginspage="http://www.adobe.com/go/getflashplayer">
</embed>
</object>
2. 单object
这种方法的名字叫做 Flash satay,最早是2002年由 Drew McLellan 发表在 A List Apart 上,后来又经过了几次完善:
<object type="application/x-shockwave-flash" data="c.swf?path=movie.swf"
width="400" height="300">
<param name="movie" value="c.swf?path=movie.swf" />
<img src="http://xuguangzhi2003.blog.163.com/blog/noflash.gif" width="200" height="100" alt="" />
</object>
优点:这方法没有embed,可以通过验证,浏览器兼容性也不错
缺点:
a.需要一个 holder swf 来加载你的目标 swf 以保证 IE 中的 stream 能力,如果你需要通过 flashvars 来传参,或者和页面的 JS 交互,会很麻烦。
b.ActiveX的虚框问题。
c.没有版本检测。
d.还是有少数用户代理(比如一些版本的 safari 和一些屏幕阅读器)不认这种方式,有 bug。
3. 双object
<object id="exercises" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="214" height="144">
<param name="movie" value="${contextPath}/flex/photo.swf" />
<param name="wmode" value="window" />
<param name="flashvars" value=""/>
<!--[if !IE]><!-->
<object id="exercisesEx" type="application/x-shockwave-flash"
data="${contextPath}/flex/photo.swf" width="214" height="144">
<param name="flashvars" value=""/>
<!--<![endif]-->
<!--[if gte IE 6]>
<![endif]-->
<!--[if !IE]><!-->
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflashplayer">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
<!--[if !IE]><!-->
</object>
<!--<![endif]-->
</object>
4. flex提供的标准方法
<!-- BEGIN Browser History required section -->
<link rel="stylesheet" type="text/css" href="http://xuguangzhi2003.blog.163.com/blog/history/history.css" />
<!-- END Browser History required section -->
<script src="http://xuguangzhi2003.blog.163.com/blog/AC_OETags.js" language="javascript"></script>
<!-- BEGIN Browser History required section -->
<script src="http://xuguangzhi2003.blog.163.com/blog/history/history.js" language="javascript"></script>
<!-- END Browser History required section -->
<style>
body { margin: 0px; overflow:hidden }
</style>
<script language="JavaScript" type="text/javascript">
<!--
// -----------------------------------------------------------------------------
// Globals
// Major version of Flash required
var requiredMajorVersion = 9;
// Minor version of Flash required
var requiredMinorVersion = 0;
// Minor version of Flash required
var requiredRevision = 60;
// -----------------------------------------------------------------------------
// -->
</script>
</head>
<body scroll="no">
<script language="JavaScript" type="text/javascript">
<!--
// Version check for the Flash Player that has the ability to start Player Product Install (6.0r65)
var hasProductInstall = DetectFlashVer(6, 0, 65);
// Version check based upon the values defined in globals
var hasRequestedVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
if ( hasProductInstall && !hasRequestedVersion ) {
// DO NOT MODIFY THE FOLLOWING FOUR LINES
// Location visited after installation is complete if installation is required
var MMPlayerType = (isIE == true) ? "ActiveX" : "PlugIn";
var MMredirectURL = window.location;
document.title = document.title.slice(0, 47) + " - Flash Player Installation";
var MMdoctitle = document.title;
AC_FL_RunContent(
"src", "playerProductInstall",
"FlashVars", "MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
"width", "100%",
"height", "100%",
"align", "middle",
"id", "ManagePlatform",
"quality", "high",
"bgcolor", "#869ca7",
"name", "ManagePlatform",
"allowScriptAccess","sameDomain",
"type", "application/x-shockwave-flash",
"pluginspage", "http://www.adobe.com/go/getflashplayer"
);
} else if (hasRequestedVersion) {
// if we've detected an acceptable version
// embed the Flash Content SWF when all tests are passed
AC_FL_RunContent(
"src", "ManagePlatform",
"width", "100%",
"height", "100%",
"align", "middle",
"id", "ManagePlatform",
"quality", "high",
"bgcolor", "#869ca7",
"name", "ManagePlatform",
"allowScriptAccess","sameDomain",
"type", "application/x-shockwave-flash",
"pluginspage", "http://www.adobe.com/go/getflashplayer"
);
} else { // flash is too old or we can't detect the plugin
var alternateContent = 'Alternate HTML content should be placed here. '
+ 'This content requires the Adobe Flash Player. '
+ '<a href=http://www.adobe.com/go/getflash/>Get Flash</a>';
document.write(alternateContent); // insert non-flash content
}
// -->
</script>
<noscript>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
id="ManagePlatform" width="100%" height="100%"
codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
<param name="movie" value="ManagePlatform.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#869ca7" />
<param name="allowScriptAccess" value="sameDomain" />
<embed src="http://xuguangzhi2003.blog.163.com/blog/ManagePlatform.swf" quality="high" bgcolor="#869ca7"
width="100%" height="100%" name="ManagePlatform" align="middle"
play="true"
loop="false"
quality="high"
allowScriptAccess="sameDomain"
type="application/x-shockwave-flash"
pluginspage="http://www.adobe.com/go/getflashplayer">
</embed>
</object>
</noscript>
5. swfobject
http://code.google.com/p/swfobject/
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject 2 dynamic publishing example page</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("test.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf");
</script>
</head>
<body>
<div id="myContent">
<h1>Alternative content</h1>
<p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif"
alt="Get Adobe Flash player" /></a></p>
</div>
</body>
</html>
6. 单embed显示 ie7和ff3下都能正常显示
<embed allowscriptaccess="never" allownetworking="internal" invokeurls="false" src="http://chabudai.sakura.ne.jp/blogparts/honehoneclock/honehone_clock_tr.swf"
pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" quality="high" autostart="0" wmode="transparent" width="100%"
height="300" align="middle">
分享到:
相关推荐
1. **HTML嵌入SWF**:HTML页面通过`<object>`、`<embed>`或`<iframe>`标签来插入SWF文件。这些标签包含指向SWF文件的URL以及一些配置参数。 2. **HTTP请求与响应**:提取SWF文件前,需要发送HTTP GET请求到服务器...
在电子书中插入SWF文件,可以增加内容的吸引力,让读者体验更加丰富多元。以下是关于SWF文件和如何在IEbook中使用的几个关键知识点: 1. **SWF文件格式**:SWF是Adobe Flash Player支持的文件格式,用于在网页上...
在C#和Asp.Net中嵌入SWF文件,主要涉及以下几个关键知识点: 1. **Web控件**:Asp.Net提供了多种Web控件,用于在网页上添加各种功能。在这个例子中,我们将使用`<object>`或`<embed>`标签来嵌入SWF文件。这两个HTML...
本文将详细介绍几种常用的下载Flash SWF文件的方法,帮助读者轻松解决这一问题。 #### 一、查看源文件 这种方法适用于大多数网页,尤其是那些未对Flash文件进行加密或隐藏处理的情况。具体步骤如下: 1. **打开...
通过集成Air SDK,开发者可以使用ActionScript开发SWF文件,并在Android应用中嵌入。安装Air SDK后,使用Flash Builder或An ActionScript IDE如IntelliJ IDEA,可以将SWF项目打包为Android应用。 2.第三方库:...
ActionScript可以嵌入在SWF文件的特定标签中,如DoAction或DoInitAction。 5. **声音和视频**:SWF文件能够包含压缩的音频和视频流,这使得在线媒体播放成为可能。声音可以是MP3或其他格式,视频则使用Sorenson ...
1. **检测SWF文件**:工具通过扫描网页源代码或者与浏览器进行交互来找到嵌入的SWF对象。 2. **拦截网络请求**:当浏览器请求加载SWF内容时,工具能够捕获这一请求,并阻止它直接在浏览器中加载,而是将其保存到本地...
- 转换完成后,生成的SWF文件可以直接嵌入网页、电子邮件或在线平台,供他人浏览。 3. **特性与优势**: - **易用性**:FlashPaper操作简单,适合非技术用户快速转换文档。 - **交互性**:SWF文件支持点击链接、...
"swf文件提取mp3"这一操作主要是从SWF文件中抽取音频流并将其转换为MP3格式,以便在不依赖Flash播放器的情况下独立播放音频。 SWF文件内部可能包含音频、视频、图像以及交互元素。音频数据通常以嵌入的方式存储,...
**方法一:插入SWF文件** 1. 通过“插入”菜单选择“对象”,然后从“由文件创建”选项中选择你的SWF文件。 2. 在“动作设置”对话框中,选择“对象动作”下的“激活内容”。 **方法二:插入EXE文件** 1. 先插入...
本文将详细介绍四种在PPT中插入和控制声音的方法。 首先,将某段音乐作为整个演示文稿的背景音乐。这适用于制作电子相册或画册时,为每页幻灯片提供连续的背景音乐。具体步骤包括: 1. 准备音乐文件,支持WAV、MID...
以下是关于在PowerPoint中插入几种对象的详细方法: **一、插入Flash影片** 1. **利用控件插入法** - 步骤1:打开PowerPoint,选择“视图”>“工具栏”>“控件工具箱”。 - 步骤2:在控件工具箱中找到“其他控件...
以下是四种在PowerPoint 2003中插入Flash动画的方法: 方法一:通过插入对象 1. 选择“插入”菜单,然后选择“对象”。 2. 在弹出的对话框中,选择“由文件创建”,找到SWF文件,点击“插入”。 3. 在“动作设置”...
2. **在线演示和教学**:SWF文件可以方便地嵌入网页,因此,将exe转换为swf有助于创建在线教程、演示或者游戏,使得内容能更轻松地分享和访问。 3. **节省存储空间**:与exe文件相比,swf文件通常具有较小的体积,...
V9规范详细定义了这种文件格式的第九个版本,它涵盖了数据结构、编码方法以及SWF文件如何在浏览器和其他环境中运行的方方面面。 在"SWF文件格式V9规范"中,我们可以学习到以下几个关键知识点: 1. **文件头**:每...
2. **对象操作**:在易语言中,需要理解如何创建和操作对象,例如创建一个表示PPT文件的对象,并对这个对象进行操作,如插入新的幻灯片或插入SWF文件。 3. **路径处理**:在源码中,你需要处理SWF文件和PPT文件的...
3. **Tags**:标签是SWF文件结构的核心,用于定义对象、设置属性、嵌入数据和定义动作。 - **Shape Tags**:用于描述矢量图形。 - **Bitmap Tags**:用于存储和显示位图。 - **Action Tags**:包含ActionScript...
以下将详细介绍如何在网页中嵌入FLV视频文件的两种方法。 ### 方法一:JavaScript嵌入 此方法使用JavaScript动态创建`<object>`和`<embed>`标签来插入FLV视频播放器。以下为关键代码解释: 1. 定义变量: - `swf...