在本文中,我们将为您详细介绍如何在HTML页面中嵌入SWF文件?的相关知识,并且为您解答关于htmlswf的疑问,此外,我们还会提供一些关于Flex中嵌入swf文件、flex嵌入html完整页面and
在本文中,我们将为您详细介绍如何在HTML页面中嵌入SWF文件?的相关知识,并且为您解答关于html swf的疑问,此外,我们还会提供一些关于Flex中嵌入swf文件、flex嵌入html完整页面and嵌入其他项目swf文件、flex页面中嵌入html页面、html – 如何在网站中嵌入PDF文件?的有用信息。
本文目录一览:- 如何在HTML页面中嵌入SWF文件?(html swf)
- Flex中嵌入swf文件
- flex嵌入html完整页面and嵌入其他项目swf文件
- flex页面中嵌入html页面
- html – 如何在网站中嵌入PDF文件?
如何在HTML页面中嵌入SWF文件?(html swf)
如何将SWF文件嵌入HTML页面?
答案1
小编典典将SWF嵌入HTML页面的最佳方法是使用SWFObject。
这是一个简单的开源JavaScript库,它是易于使用且符合标准的方法来嵌入Flash内容。
它还提供Flash
Player版本检测。如果用户没有所需的Flash版本或禁用了JavaScript,则他们将看到替代内容。您还可以使用此库来触发Flash
Player升级。用户升级后,他们将被重定向回页面。
文档中的示例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <title>SWFObject dynamic embed - step 3</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("myContent.swf", "myContent", "300", "120", "9.0.0"); </script> </head> <body> <div id="myContent"> <p>Alternative content</p> </div> </body></html>
与之配合使用的一个很好的工具是SWFObject HTML和JavaScript
生成器。它基本上会生成使用SWFObject嵌入Flash所需的HTML和JavaScript。带有一个非常简单的UI,供您输入参数。
强烈建议您使用它,并且非常简单。
Flex中嵌入swf文件
嵌入 SWF 文件与嵌入图像几乎是相同的。 差别在于您可以将嵌入的 SWF 文件的实例当作 MovieClip 类的实例处理。 (它们实际上是 MovieClipAsset 类的子类,MovieClipAsset 类是 MovieClip 类的子类。)
注意: 您无法直接访问嵌入的 SWF 文件的属性或方法。 但是,您可以使用 LocalConnection 以允许它们进行通信。
例子1:
- <? xml version = "1.0" encoding = "utf-8" ?>
- < mx:Application
- xmlns:mx = "http://www.adobe.com/2006/mxml"
- viewSourceURL = "src/EmbeddingSwfFiles/index.html"
- layout = "horizontal" width = "290" height = "290"
- horizontalAlign = "center" verticalAlign = "middle"
- >
- mx:Script >
- <![CDATA[
- [Embed(source="assets/hourglass.swf")]
- [Bindable]
- public var Hourglass:Class;
- ]]>
- </ >
- mx:Image id = "hourglass" source = "{Hourglass}" />
- mx:Application >
嵌入 SWF 库资源
您可以在应用程序中嵌入来自现有 SWF 库中的特定符号。 Flash 定义三种类型的符号: Button、MovieClip 和 Graphic。 您可以在 Flex 应用程序中嵌入 Button 和 MovieClip 符号,但您不能嵌入 Graphic 符号,因为无法为 ActionScript 导出 Graphic 符号。
此示例使用 [Embed] 元数据标签的 source 属性来指定包含您的库的 SWF 文件,并使用 [Embed] 元数据标签的 symbol 属性来指定您要在该库中嵌入的符号的链接 ID。
例子2:
下面的例子使用3个不同的标识符加载“assets/icons.swf”文件。每个资源都被赋予了不用的变量。这样即使使用同一个SWF文件,它们也能很容易的引用独立的资源。
Images.as:
- package
- {
- public class Images
- {
- [Embed('assets/icons.swf' , symbol= 'bulletCheck' )]
- public static const BULLET_CHECK:Class;
- [Embed('assets/icons.swf' , symbol= 'bulletCritical' )]
- public static const BULLET_CRITICAL:Class;
- [Embed('assets/icons.swf' , symbol= 'bulletWarning' )]
- public static const BULLET_WARNING:Class;
- }
- }
flex嵌入html完整页面and嵌入其他项目swf文件
http://xintao222.iteye.com/blog/797566
将 html 页面 或 jsp 页面嵌入 到flex 页面中
step1:下载 flex-iframe-1.5.1.swc
http://code.google.com/p/flex-iframe/
step2:将此文件拷贝到flex项目的 flex_libs文件夹下
step3:创建mxml文件 vBoxiframe.mxml
<?xml version="1.0" encoding="utf-8"?> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:code="http://code.google.com/p/flex-iframe/" width="100%" height="100%"> <mx:hdividedBox x="0" y="10" width="100%" height="100%"> <mx:Panel width="30%" height="100%" layout="absolute"> <code:IFrame id="frm2" source="Demo/WebContent/topology.html" height="100%" width="100%"/> </mx:Panel> <mx:Panel width="70%" height="100%" layout="absolute"> <code:IFrame id="frm1" source="Demo/WebContent/topology.html" height="100%" width="100%"/> </mx:Panel> </mx:hdividedBox> </mx:VBox>
运行该 application 即可看到 此 mxml中嵌入 topology.htm 内容
但是有一个问题,如果我想 嵌入 “www.google.com”则运行出来说找不到 此 页面
problem1:如果我将 source=“www.google.com”则自动会加上我的项目名称eg smp31/www.google.com.cn
problem2:如果我将 source=“/www.google.com”则 直接报错找不到/www.google.com页面文件
希望哪位帮忙指点下我应该 怎么 嵌入一个 公网上的 hmtml 页!非常感谢!!!
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
WAY2在mxml文件中嵌入一个其他项目中的swf文件
在mxml文件中直接复制下面代码,更改 swf 路径就可
<mx:Script> <![CDATA[ import gs.plugins.VolumePlugin; import mx.events.FlexEvent; import mx.controls.SWFLoader; import mx.managers.SystemManager; private function init():void { var loader:SWFLoader = new SWFLoader(); loader.percentHeight = 100; loader.percentWidth = 100; loader.addEventListener(Event.COMPLETE,onLoaded); loader.addEventListener(IOErrorEvent.IO_ERROR,onError); //loader.load("Demo/WebContent/topology.swf"); //smp31.swf //D:\develop\develop_WorkSpace\liferaySmp31\smp31\WebContent\Demo\WebContent\topology.swf // loader.load("D:\develop\develop_WorkSpace\liferaySmp31\smp31\WebContent\Demo\WebContent\topology.swf"); addChild(loader); } private function onError(e:Error):void{ } private function onLoaded(e:Event):void { var loader:SWFLoader = e.target as SWFLoader; var sysMgr:SystemManager = loader.content as SystemManager; sysMgr.addEventListener(FlexEvent.APPLICATION_COMPLETE,onAppComplete); } private function onAppComplete(e:FlexEvent):void { var sysMgr:SystemManager = e.target as SystemManager; //如果此页面是application就转成application如果是 module 就转成 module // var app:Application = sysMgr.getChildAt(0) as Application; var app:Module = sysMgr.getChildAt(0) as Module; //app.callAPI(parameters); } ]]> </mx:Script>
用标签方式也可直接嵌入swf文件,时间仓促 没来的急 研究 这两种 方式有什么区别
<mx:VBox width="100%" height="100%"> <mx:SWFLoader source="http://localhost:8080/topology/topology.swf" width="100%" height="100%"/> </mx:VBox>
flex页面中嵌入html页面
使用flex-iframe插件
在gitHub上的地址如下
https://github.com/flex-users/flex-iframe
可以这样引入这个插件
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ic="http://www.supermap.com/iclient/2010" xmlns:is="http://www.supermap.com/iserverjava/2010" xmlns:flexiframe="com.google.code.flexiframe.*" width="100%" height="100%" creationComplete="initApp()">
如上面引入了xmlns:flexiframe="com.google.code.flexiframe.*这样一行
在flex页面中
这样使用
<flexiframe:IFrame id="iFrame" width="392" height="100%" label="wgdy" source="{wgdyHtmlUrl}"> </flexiframe:IFrame>source属性设置要嵌入的html页面,我们可以在flex页面的initApp方法中动态初始化
然后在flex页面中我们可以这样调用
iFrame.callIFrameFunction("glxzq",[xzqbm]);glxzq是html页面中的方法
function glxzq(xzqbm) { document.getElementById("wgdy:xzqbm").value=xzqbm; }
[xzqbm]中[]是规定的,xzqbm是参数
具体可以看官网的使用说明
html – 如何在网站中嵌入PDF文件?
我发现的最佳解决方案是Google Docs Viewer(http://docs.google.com/viewer),但它不适用于IE,显然这对我不起作用.
任何人都有一个干净,简单的解决方案吗?
更新:我应该补充一点,谷歌查看器嵌入PDF文件的好处之一就是当我链接到的PDF文件得到更新时(它可以不经通知我),我的网站会自动持有相同的PDF文件(如果完整路径名没有改变,它不会改变).因此,不希望将文件转换为图像.
解决方法
http://flexpaper.devaldi.com/
但实际上它只是一个简单的
< iframe src =“path / to / pdf”width =“500”height =“700”>
今天关于如何在HTML页面中嵌入SWF文件?和html swf的分享就到这里,希望大家有所收获,若想了解更多关于Flex中嵌入swf文件、flex嵌入html完整页面and嵌入其他项目swf文件、flex页面中嵌入html页面、html – 如何在网站中嵌入PDF文件?等相关知识,可以在本站进行查询。
本文标签: