`
michaeltangbin
  • 浏览: 271730 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江省
社区版块
存档分类
最新评论

JS+AS+SWFloader ,html页面中动态加载SWF文件

阅读更多

这其实就是一个js调用as的一个实例。在html中动态控制swf文件的导入。

不多说了,代码入如下。(刚刚开始写东西,代码质量还是比较差的,呵呵,大家多提宝贵意见!)

 需要注意的是,当js和AS通信的时候,要把文件部署到服务器环境,否则在IE7下面,会有错误提示。(至少我测试的时候是这个样子地!!)

Flex代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
	 initialize="init()" width="1000" height="800">
   
	<mx:Script>
		<![CDATA[
		import mx.controls.Alert;
		import  flash.utils.Timer;
		[Embed(source="./assets/loading1.swf")]
		private var loading:String;
		[Embed(source="./assets/close.png")]
		private var closeicon:String;
		var startTimer:Timer = new Timer(1000,1); //用户设定效果定时器
		
		var endTimer:Timer = new Timer(5000,1);//用于设定结束定时器
		
		function loadSwf(name:String):void 
		{
				startTimer.reset();           
	            endTimer.reset();  
	            swfloader.visible=false;
	            startTimer.addEventListener(TimerEvent.TIMER_COMPLETE, startEvent);
	            endTimer.addEventListener(TimerEvent.TIMER_COMPLETE, endEvent);
				swfloader.source="";
				swfloader.source=name+".swf";				
				waitfun(loading);

	            startTimer.start();           
	            endTimer.start();              

		}
		
		function init():void
		{
			ExternalInterface.addCallback("myFunction", loadSwf);
		}
		
		public function startEvent(event:TimerEvent):void
		{
			swfloader.visible=true;
		}
		public function endEvent(event:TimerEvent):void
		{
			swfloader.visible=false;
			waitfun(closeicon);			
		}		
		
		function waitfun(url:String):void
		{
			preloader.source=url;
		}
		]]>
	</mx:Script>
    <mx:Fade id="fadeIn" duration="500" alphaFrom="0.0" alphaTo="1.0"/>
	<mx:Canvas x="0" y="0" width="100%" height="100%" backgroundColor="#FFFFFF">
	<mx:SWFLoader horizontalCenter="0" verticalCenter="0" id="preloader"/>
	<mx:SWFLoader showBusyCursor="true" x="0" y="0" width="100%" height="100%" id="swfloader" visible="false"   showEffect="{fadeIn}"/>
	<mx:Button label="dian"    x="57" y="189"/>
	<mx:Button x="57" y="236" label="Button" click="loadSwf('assets/123')"/>
	<mx:Button x="57" y="266" label="Button" click="loadSwf('assets/test')"/>
	</mx:Canvas>	
</mx:Application>

 

html代码:

 

<html>
<head>
</head>
<script language="javascript">
function Button1_onclick() 
{
var f1 = document.getElementById("myswf");
f1.myFunction("123");
 }
function Button2_onclick() 
{
var f1 = document.getElementById("myswf");
f1.myFunction("test");
 }
</script>
<body>
<table>
<tr>
<td>sdfsdfssdf</td><td><input type="button" value="hello"onclick="Button1_onclick()"/><input type="button" value="hello"onclick="Button2_onclick()"/></td>
</tr>
<tr>
<td>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="myswf" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="1000" height="800"> 
<param name="movie" value="bank.swf"> 
<param name="quality" value="high"> 
<param name="wmode" value="transparent"> 
<embed src="bank.swf" width="1000" height="800" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent"></embed> 
</object> 
</td>
</tr>
</table>

</body>
</html>

 

分享到:
评论

相关推荐

    Flash课件制作教程-加载SWF文件

    本教程将重点讲解如何在Flash中加载SWF文件,这是一项关键的技术,能够帮助开发者实现课件之间的交互性和资源共享。下面将详细阐述这一过程。 首先,SWF全称为"Small Web Format",是Adobe Flash的文件格式,用于在...

    AS3 调用SWF类库

    在AS3(ActionScript 3)中,调用SWF类库是一项常见的任务,尤其在构建可重用组件、模块化开发或者加载外部资源时。本文将深入探讨如何使用...通过学习这些示例,你可以更深入地理解AS3中加载和调用SWF类库的实际应用。

    swfloader:swf加载器,用于在flex中加载swf文件。可用于组件模块化,加载然后反射得到相应类

    用于在flex中缓存加载swf文件。 可用于组件模块化加载。加载完成的组件,下次加载可直接从SWFCache中根据url获取相应内容,避免重复加载 单个加载方式 var item:SWFItem = new SWFItem(); item.url = "module/...

    AS3加载外部资源(资源管理器)

    在ActionScript 3 (AS3)中,加载外部资源是创建动态、交互式内容的关键技能。资源管理器功能允许开发者高效地处理各种类型的媒体和数据,包括图片、SWF文件、声音、XML文档以及二进制文件。这些加载技术不仅提高了...

    Flex 动态加载 Image 和 Icon 解决方案

    如果是矢量图形,你可能需要使用 `SWFLoader` 类来加载 SWF 文件,然后将其中的图形作为 Icon 使用。如果是位图 Icon,可以使用上述的 `Loader` 方法。此外,Flex 还提供了 `mx.controls.IconItem` 和 `mx.controls....

    flex 嵌入完美Iframe

    总结来说,"flex 嵌入完美Iframe"是指在Flex应用程序中通过AS3代码实现HTML Iframe的加载和交互,这通常涉及到SWFLoader组件、跨域策略、以及AS3与JavaScript的交互机制。而“CTICSIIFrame.as”很可能是一个封装了...

    Tree与SWFLOAD

    在"Tree与SWFLOAD"的应用场景中,SWFLoader被用来动态加载图片,这些图片可能存储在SWF文件中,或者作为单独的资源通过网络加载。当用户在树形结构中选择特定节点时,对应的SWFLoader会加载并显示相应的图片。这种...

    多个swf的通讯

    这是因为AS3引入了`ApplicationDomain`类,它可以更直接地访问和使用另一SWF中的类和函数,无需预先定义。 **LocalConnection的优势与局限:** - **优势**:兼容性强,支持AS1、AS2和AS3之间的通讯。 - **局限**:...

    flex加载flashpaper示例

    在本示例中,我们将深入探讨如何在Flex应用中加载和展示由FlashPaper生成的Flash内容。 首先,我们需要理解Flex中的SWFLoader组件。SWFLoader是Flex SDK提供的一种用于加载和显示SWF文件(包括由FlashPaper转换的...

    FLEX+Flash动态更换皮肤演示

    4. **动态加载和应用皮肤**:在Flex中,可以使用`SWFLoader`组件来加载外部的SWF文件,然后通过反射或者接口调用来获取并应用皮肤。这通常涉及到对ActionScript类的深入理解和对Flex组件API的熟练掌握。 5. **事件...

    FLEX ActionScript3 游戏开发教程之 贪吃蛇 flashas3源代码.zip

    - **SWFLoader**:SWFLoader组件用于加载外部SWF文件,可以用于加载游戏资源,如背景图片、音效等。 - **进度条**:结合SWFLoader,创建加载进度条,提供更好的用户体验,显示资源加载状态。 5. **绘图技术** - ...

    Delphi SWF

    例如,通过OnLoad事件处理SWF文件加载完成,OnProgress事件跟踪加载进度,OnClick事件响应用户对SWF内容的操作。还可以通过API调用来访问Flash ActionScript的某些功能,尽管这可能需要对ActionScript有一定的理解。...

    C#播放Flash文件

    3. **编写代码**:在自定义控件中,使用SWFLoader的API来加载和播放SWF文件。 ```csharp using SWFLoader; public partial class FlashPlayerControl : UserControl { private SWFLoader.SWFLoader swfLoader; ...

    Flex在线阅读pdf工具swftools详解

    在Flex项目中,可以使用加载SWF文件的类,如`SWFLoader`,将转换后的SWF文档加载到Flex应用程序中。首先,创建一个`SWFLoader`实例,并设置其`source`属性为SWF文件的URL: ```actionscript var swfLoader:...

    amcharts嵌入到flex中

    在Flex项目中,创建一个SWF对象来加载AmCharts JavaScript文件。这可以通过在MXML文件中使用`&lt;mx:SWFLoader&gt;`标签实现,设置其`source`属性为AmCharts的JavaScript文件路径。例如: ```xml &lt;mx:SWFLoader id=...

    SWFLoader源代码

    用来加载位图,需要将图片先导入FLASH,放在SWF类远见中。然后通过此类读取。

    让Flex3与flashcs3珠联璧合

    - **在Flex中使用Flash内容**:在Flex的MXML文件中,使用`&lt;mx:SWFLoader&gt;`或`&lt;s:SWFLoader&gt;`标签加载SWF文件,将其嵌入到用户界面中。通过设置`source`属性指定SWF文件的位置。 - **交互处理**:为了实现Flex和...

Global site tag (gtag.js) - Google Analytics