首页 > 代码库 > 在 Flash ActionScript 2.0 中调用 Javascript 方法
在 Flash ActionScript 2.0 中调用 Javascript 方法
本篇文章由:http://xinpure.com/call-the-javascript-method-in-flash-actionscript-2-0/
在 Flash ActionScript 2.0 中调用 Javascript 方法
最近在工作中,有个这样的需求: 要从 Flash ActionScript 2.0 中调用网页上的 Javascript 方法
这是一个关于 Flash 和 Javascript 交互的问题。
在 ActionScript 2.0 中调用外部 javascript 方法,使用的是 ExternalInterface.call() 方法
开始测试:
鼠标点击元件事件,触发 Javascript 方法
在 Flash 元件上添加如下代码:
on(release) {
ExternalInterface.call("testFlashClick");
}
在 Html 添加如下 Javascript 代码:
function testFlashClick() {
alert(‘testToFlashClick‘);
}
理论上当鼠标点击 Flash 上的元件时,会触发 Javascript 的 Alert 弹窗
感觉好像是可行的。。。
但是奇怪的是,完全没有反应!
纠正错误
错误原因 ExternalInterface.call() Undefined
在使用该方法时,需要先引入它的类库 flash.external package
当然也可以使用 flash.external.ExternalInterface.call()
调用些方法
正确示例
在 Flash 元件上添加如下代码:
on(release) {
flash.external.ExternalInterface.call("testFlashClick");
}
这样问题就解决了。
其它方法
在 ActionScript 2.0 中 调用外部 URL 可以使用 getURL() 方法
因此,我们也可以使用如下代码,实现想要的效果:
on(release) {
getURL("javascript: testFlashClick()");
}
换个说法,这就好比 Html 中的 a 标签的 href 属性一样: <a href="javascript: testFlashClick()"></a>
道理是一样的,效果当然也会一样。
在 Flash ActionScript 2.0 中调用 Javascript 方法