`
sealbird
  • 浏览: 584689 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

as3 flash web 应用 (6)swfobject的使用:将flash嵌入页面

    博客分类:
  • Flex
阅读更多
from http://hi.baidu.com/yukon_kanzaki/blog/item/41b7282d28011a39359bf743.html
(鉴于最近有些抓取机器和抄袭者,把标题的【原】字都复制,我不得不声明:本文为 yukon12345原创,转载请注明出处 http://hi.baidu.com/yukon_kanzaki)
接下来要推荐的是开源插件swfobject(在src文件夹有所有源码)

swfobject下载:[b]http://code.google.com/p/swfobject/[/b]          (右边有最新版链接)

swfobject是比较流行的使用js而非使用<embed><object>插入flash影片的js插件,除了插入flash之外,还提供向flash传递值,检测浏览器版本,简化加载过程的作用,甚至还可以让低版本flash player的用户不离开本页面而自动升级,最新的2.2版甚至还添加了对iphone嵌入mp4的支持,以及对HTML5的<!doctype html>文档标签类型的支持。

中文使用说明:http://wenku.baidu.com/view/6c49d27da26925c52cc5bff3.html
向外开放的程序接口:http://code.google.com/p/swfobject/wiki/api

看到这么多,昏了吧?来直接进入关键主题:

把swf嵌入网页中:
<html>
<script type="text/javascript" src="swfobject.js"></script> //这里先要引入这个swfobject插件
<script type="text/javascript">

swfobject.embedSWF("your.swf", "flashcontent", "300", "120",“9", "expressInstall.swf");

</script>    
<div id="flashcontent">

This text is replaced by the Flash movie.    //这里是如果js被禁用,导致无法加载时的显示文字

</div>
</html>

这样就完成了。很简单
解释:
直接使用swfobject.embedSWF()即可导入参数的意义各如下:

1:("your.swf") 你想导入的swf的地址

2:("flashcontent" )指出flash将放入的div的ID号。同时也是flash的ID号。另外如果想用css的话 div#flashcontent可选择div,object#flashcontent可选择flash

3:(“300”)宽度

4:("120")高度

5:("9")最低要求版本号。将检测是否小于此版本号

6:("expressInstall.swf")如果版本过低,将导入的安装文件。让用户可以在此页面自动升级。

以上是最简单的swf文件导入。
更复杂一点的:将各种参数传递给flash:

<html>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
var flashvars={
name1:"hello",
name2:"world"
}
var params={
menu: "false"
}
var attributes = {
id: "myDynamicContent",                
//注意:在这里不设置时flash影片的id值将继承于它的html父容器的id,设置后,flashid将会是此设置值(加载完毕响应函数callbackFn执行时,id还是原来的。之后就会改变)
name: "myDynamicContent"
}
function callbackFn(e) {
if(e.success)
{
alert("flash加载成功!\n id:"+e.id+"\n引用:"+e.ref)
}
else{
alert("flash加载失败!\n id:"+e.id)
}
}
swfobject.embedSWF("你的文件名地址.swf", "flashcontent", "300", "120", "10", "expressInstall.swf",flashvars, params, attributes, callbackFn);
</script>    
<div id="flashcontent">
This text is replaced by the Flash movie.
</div>
</html>

解释:

flashvars:传递给flash影片的URL类型参数。作用同于原始的 *.swf?name1="hello"&name2="wolrd"。as3中使用loaderInfo.parameters数组来获取参数值。比如使用loaderInfo.parameters['name1']获取到hello

params:flash的params标签值。作用同于原始的<param name=" menu" value="false" />

attributes:flash属性值作用同于<object classid="clsid:F08DF954-8592-11D1-B16A-00C0F0283628" id="Slider1" width="100" height="50"> 

关于最后一个事件回调参数callbackFn,它接收一个object对象比如e,在加载flash完毕或者失败后响应执行。e对象属性有:

success,指出是否加载成功(true/false)

id, 指出使用swfobject.registerObject()接口注册的flash的id (swfobject.registerObject接口在初始化时会自动调用)

ref, 当加载成功时,返回HTML对象元素的引用,失败时返回undefined。 
分享到:
评论

相关推荐

    Flash as3 全网站

    12. **跨平台兼容性**:虽然Flash主要应用于Web,但AS3代码可以适应不同平台,包括桌面、移动设备等,为全站开发提供广泛的覆盖。 综上所述,Flash AS3全站开发涵盖了大量的技术和设计原则,从基本的编程概念到复杂...

    完美flash 3d效果源文件

    标题中的“完美flash 3D效果源文件”指的是一个包含Flash 3D图形动画的项目,这通常涉及...通过深入研究这些文件,开发者可以了解到如何利用Flash技术创建具有专业品质的3D视觉效果,并掌握如何将它们整合到Web项目中。

    [转]FLASH与JS序列简单应用

    6. **事件监听**:使用`ExternalInterface.addCallback()`在Flash中注册一个函数,使其可被JavaScript调用作为事件监听器。在JavaScript端,可以触发事件来调用这个注册的函数。 7. **备选内容**:SWFObject还支持...

    js调flash的方法

    首先,要使用JS调用Flash,我们需要在HTML页面中正确地嵌入SWFObject。这通常涉及以下几个步骤: 1. **引入SWFObject库**:在HTML文档的`&lt;head&gt;`部分引入SWFObject的JavaScript文件,如: ```html &lt;script src="...

    flash as3.0 + xml 经典flv视频播放

    在"index.html"中,可能使用了SWFObject库来嵌入Flash内容到HTML页面中,使得播放器可以在网页上正确显示和运行。 "index.swf"和"index_den.swf"是编译后的Flash影片,包含了所有ActionScript代码、图形和其他资源...

    js与as通信,js调用flash的方法

    在JavaScript (JS) 和ActionScript (AS) 之间进行通信是一...通过理解和应用这些知识点,开发者可以创建出更丰富的Web体验,比如动态更新内容、控制Flash播放等。同时,要注意安全性和性能优化,以提供流畅的用户体验。

    使用flash播放mp4视频

    总结来说,"使用Flash播放MP4视频"涉及到HTML页面嵌入Flash Player、ActionScript编程、JavaScript库(如swfobject.js)的使用,以及可能的jQuery辅助。然而,随着技术的发展,现在更推荐使用HTML5原生的视频播放...

    通过js文件,传值给flash

    要启用这个功能,首先在Flash的AS3代码中需要导入`flash.external.ExternalInterface`库,并使用`ExternalInterface.addCallback`方法来定义一个可以被JavaScript调用的函数。 2. **设置允许JavaScript交互**: 在...

    C# LoadFLASH播放Flash

    4. **第三方库**:如果你需要在不依赖Flash Player插件的情况下播放Flash,可以考虑使用开源库如AS3CoreLib或SWFObject等。这些库可以帮助你在C#环境中解析和播放SWF内容,但请注意这可能需要对Flash的内部工作原理...

    AS3 声音频谱分析器

    4. **分析频谱**:使用FFT(快速傅里叶变换)将时间域的音频样本转换为频率域的数据,这可以通过自定义算法或使用现成的库如`flash.utils.getTimer()`来实现。 5. **可视化**:将分析出的频谱数据映射到可视化元素上...

    flex&flash相互调用

    当Flex应用程序需要利用Flash的高级图形或动画能力时,可以使用SWFObject库将Flash内容嵌入到Flex应用中。通过使用ExternalInterface API,Flex可以调用Flash对象中的公开方法。首先,在Flash中定义一个可外部访问...

    flash自适应高度

    在AS3中,可以使用`stage.stageHeight`属性获取舞台高度,然后相应地调整内容区域。 4. **使用SWFObject**: SWFObject是一个流行的JavaScript库,用于插入和管理Flash内容。它可以方便地实现Flash的自适应高度。...

    Flex组建大全|Flash|Flex|ActionScript3.0

    2. **as3youtubelib**: 这个库提供了与YouTube API的接口,允许在Flash应用中嵌入和播放YouTube视频。 3. **as3flickrlib**: 该库支持与Flickr API的连接,方便展示和操作Flickr上的照片。 4. **Yahoo ASTRA Flash...

    控制flash的播放等相关操作的C#源程序

    在Web环境中,通常会使用SWFObject库或Adobe提供的AS3CoreLib库来与Flash交互。在C#桌面应用中,可能需要通过ActiveX或其他嵌入方式来控制Flash内容。 描述中的“控制包括播放,停止等相关操作”提示我们,主要关注...

    Flash 完成复制到剪贴板小插件

    1. **创建Flash组件**:使用Adobe Flash Professional或其他支持AS3(ActionScript 3)的编辑器,创建一个新的Flash项目。ActionScript是Flash中的编程语言,我们将用它来编写复制到剪贴板的逻辑。 2. **编写...

    星座密码 flash,不要积分

    标题中的“星座密码 flash,不要积分”提示我们这是一个关于使用Adobe Flash创作的项目,可能涉及到星座和密码解谜的互动元素。...同时,也可以借鉴其将Flash与JavaScript结合的方式,以适应现代Web开发的需求。

    图形统计flash饼状图

    2. **Flash控件**:可以使用嵌入到网页的Flash组件来显示饼状图,这些组件通常由第三方库提供,如SWFObject库用于在网页中嵌入Flash内容。 3. **Ajax集成**:通过AJAX技术,可以在不刷新整个页面的情况下更新饼状图...

    內部嵌入SWF檔

    【内部嵌入SWF档】是指在应用程序中集成并运行Flash(SWF)文件的技术。SWF是Adobe Flash Player支持的文件格式,主要用于创建交互式动画、多媒体内容和Web应用程序。这种技术在过去非常流行,特别是在网页设计和...

    flash(swf)+xiff3.0+openfire实现网页端接收推送消息

    4. 使用Flash Professional打开`recipient.fla`,编写或调整接收和处理消息的AS3代码。 5. 将`recipient.fla`编译为`recipient.swf`,并在`recip.html`中使用`swfobject.js`将其嵌入。 6. 测试网页,确保能够成功...

Global site tag (gtag.js) - Google Analytics