`

ActionScript3 Cookbook中摘取(八)

    博客分类:
  • Flex
阅读更多

1、ActionScript调用JavaScript

call( ) 方法至少需要一个参数来指明javascript函数名称

ExternalInterface.call("changeTitle");

如果JavaScript函数本身需要参数,在call( )方法参数中继续添加,例如,changeTitle( ) 函数接受一个参数:
ExternalInterface.call("changeTitle", "ActionScript 3.0 Cookbook");

======================================================================

 

2、Javascript调用ActionScript

使用ExternalInterface.addCallback( ) 注册ActionScript 函数,然后在JavaScript端进行调用。

addCallback( ) 方法接收两个参数:第一个参数为String类型的函数名,浏览器将借此名称得知要调用的函数,第二参数为浏览器调用定义的函数名时要执行的实际ActionScript函数。下面的例子注册了函数displayMessage ,在JavaScript中的别名为showMessage:
ExternalInterface.addCallback("showMessage", displayMessage);

浏览器中的Flash播放器有两种类型:ActiveX(<object>标签) 和 plug-in(<embed>标签)版本

例:

<script language="JavaScript">
var flashPlayer;
function detectFlashPlayer( ) {
	if(navigator.appName.indexOf("Microsoft") != -1) {
		flashPlayer = window.objectId;
	}
	else {
		flashPlayer = window.document.embedName;
	}
}
</script>

//body onload
<body onLoad="detectFlashPlayer">
//调用
flashPlayer.showMessage( );

//调用带参数
flashPlayer.showMessage("example message");

=========================================================================

 

3、通过html中标签的param给swf传递参数

HTML部分需要在<object> 标签中添加一个<param name="FlashVars"> 标签,

在ActionScript方面,可通过任何可视化组件都有的root.loaderInfo.parameters 属性得到FlashVars传递进来的参数,root.loaderInfo.parameters 属性是一个关联数组

=========================================================================

 

4、下载文件

var fileReference:FileReference = new FileReference( );

var urlRequest:URLRequest = new URLRequest("http://www.myexamplesite.com/example.txt");
fileReference.download(urlRequest);

//download( ) 方法的第二个参数就是指定显示在保存对话框的文件名

fileReference.download(urlRequest, "11.txt");

download( ) 方法最好放在try...catch 语句中执行,因为该方法可能会抛出异常,主要两种异常:
IllegalOperationError和SecurityError。当保存对话框已经打开的情况下调用download( )方法会抛出IllegalOperationError,SecurityError异常是由于SWF不允许下载所导致。

例:

try {
	fileReference.download(urlRequest, fileName);
}
catch (illegalOperation:IllegalOperationError) {
	// code to handle an illegal operation error
}
catch (security:SecurityError) {
	// code to handle a security error
}

 fileReference.addEventListener(IOErrorEvent.IO_ERROR, onIOError);

=========================================================================

 

5、下载文件进度

fileReference.addEventListener(ProgressEvent.PROGRESS, onFileProgress);

 

private function onFileProgress(event:ProgressEvent):void {
    fileProgressField.text = event.bytesLoaded + " of " + event.bytesTotal + " bytes";
}
当下载完成时FileReference对象发出complete事件,类型为Event :
fileReference.addEventListener(Event.COMPLETE, onFileComplete);

=========================================================================

 

6、浏览对话框选择的文件

一、过滤

var fileFilter1:FileFilter = new FileFilter("Images", "*.png;*.gif;*.jpg");
var fileFilter2:FileFilter = new FileFilter("Documents", "*.txt;*.doc;*.pdf;*.rtf");
var fileFilter3:FileFilter = new FileFilter("Archives", "*.zip;*.tar;*.hqx");
var fileFilter4:FileFilter = new FileFilter("All", "*.*");
_fileReference.browse([fileFilter1, fileFilter2, fileFilter3, fileFilter4]);

 

二、选择

当用户选择了文件并点击了Open按钮后FileReference对象会发出select事件。

fileReference.addEventListener(Event.SELECT, onSelectFile);

//selectedFileTextField.text = fileReference.name;

fileReference.addEventListener(Event.CANCEL, onCancelBrowse);

==========================================================================

 

 

分享到:
评论

相关推荐

    ActionScript 3.0 Cookbook 中文完整版

    ActionScript 3.0 Cookbook 中文完整版.pdf

    ActionScript 3.0 CookBook 中文翻译

    压缩包中的"FLASH-FLEX3[1].0开发中文版+完整版+.pdf"文件包含了全书的完整内容,读者可以通过阅读其中的章节,了解和学习如何利用ActionScript 3.0来实现各种功能,例如: 1. 类和对象:学习如何定义类、创建对象...

    ActionScript3.0cookbook中文版

    标签“ac3”指的是ActionScript3.0,“actionscript3 cookbook”强调了这本书的实践性,而“actionscript”则是对整个ActionScript语言的泛指。 在压缩包内包含的文件《51CTO下载-ActionScript.3.0.Cookbook.中文...

    ActionScript3.0 Cookbook 中文完整版 pdf

    《ActionScript 3.0 Cookbook 中文完整版》通过具体实例,为读者提供了解决问题的“食谱”,涵盖了许多实际开发中常见的问题和挑战。每个章节都针对特定问题,提供可直接应用的代码片段,有助于快速理解和解决遇到的...

    ActionScript 3.0 cookbook中文简体完整版电子书

    《ActionScript 3.0 Cookbook》是一本专为ActionScript 3.0开发者设计的实用指南,它提供了大量具体的代码示例,帮助读者解决在开发过程中遇到的各种问题。这本书中文简体的完整版,旨在让中国地区的开发者能够更...

    ActionScript+3.0+Cookbook+中文完整版

    ActionScript+3.0+Cookbook+中文完整版source文件夹目录结构如下: org中主要是org.kingda.book.*包,所有的类文件都在其中。 com中应存放com.mimswright.*,是Mims Wright(www.mimswright.com)编写的生成抽象类的...

    ActionScript 3.0 Cookbook.rar 中文版

    在《ActionScript 3.0 Cookbook》中,你可以找到关于以下主题的知识点: 1. **基础语法**:包括变量声明、数据类型(如Number、String、Boolean)、操作符、流程控制语句(如if、for、while)、函数定义和调用等。 ...

    ActionScript 3 cookbook 锦囊妙计

    ### ActionScript 3 Cookbook 锦囊妙计 #### 一、概述 《ActionScript 3 Cookbook 锦囊妙计》是一本专为ActionScript开发者设计的实用指南。它旨在通过一系列精心挑选的示例和解决方案来帮助读者解决实际开发过程...

    ActionScript3_Cookbook_cn pdf

    Flex ActionScript3_Cookbook_cn

    ActionScript 3 Cookbook.PDF

    ActionScript 3 Cookbook.PDF

    ActionScript 3 Cookbook code

    《ActionScript 3 Cookbook》是一本专注于ActionScript 3编程技术的实用指南,源码包含在提供的多个文本文件中,如ch01.txt至ch20.txt。这些文件很可能是书中的各个章节代码示例,方便读者直接查看和运行。...

    ActionScript 3.0 Cookbook 中文完整版.pdf+源码

    在“ActionScript 3.0 Cookbook 中文完整版.pdf”中,你可以找到各种编程技巧和解决方案,每个章节都围绕一个特定的问题或任务展开,如创建动态图形、处理事件、使用XML或JSON进行数据交换、实现高级动画效果等。...

    ActionScript 3.0 Cookbook 中文版.pdf

    ActionScript 3.0 Cookbook 中文版.pdf 博文链接:https://lvxuehu.iteye.com/blog/183335

    ActionScript 3 Cookbook 中文版

    ActionScript 3 Cookbook 中文版,开发ActionScript必备资料

Global site tag (gtag.js) - Google Analytics