AS3 navigateToURL導(dǎo)致ExternalInterface 執(zhí)行失敗問題
更新時間:2009年02月08日 16:08:37 作者:
AS3 navigateToURL導(dǎo)致ExternalInterface 執(zhí)行失敗問題
我們先看下面代碼:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<!--[CDATA[
import flash.external.ExternalInterface;
private function init1():void
{
var url:String = "javascript:alert('執(zhí)行navigateToURL');";
var request:URLRequest = new URLRequest(url);
navigateToURL(request,"_self");
}
private function init2():void
{
ExternalInterface.call("function function1(){alert('執(zhí)行ExternalInterface');}");
}
private function clickfun():void
{
ExternalInterface.call("function function2(){window.document.title = '更改后的標(biāo)題';}");
}
]]-->
</mx:Script>
<mx:Button x="150" y="92" label="1" click="init1()"/>
<mx:Button x="544" y="92" label="2" click="init2()"/>
<mx:Button x="404" y="315" label="更改標(biāo)題" click="clickfun()"/>
</mx:Application>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<!--[CDATA[
import flash.external.ExternalInterface;
private function init1():void
{
var url:String = "javascript:alert('執(zhí)行navigateToURL');";
var request:URLRequest = new URLRequest(url);
navigateToURL(request,"_self");
}
private function init2():void
{
ExternalInterface.call("function function1(){alert('執(zhí)行ExternalInterface');}");
}
private function clickfun():void
{
ExternalInterface.call("function function2(){window.document.title = '更改后的標(biāo)題';}");
}
]]-->
</mx:Script>
<mx:Button x="150" y="92" label="1" click="init1()"/>
<mx:Button x="544" y="92" label="2" click="init2()"/>
<mx:Button x="404" y="315" label="更改標(biāo)題" click="clickfun()"/>
</mx:Application>
函數(shù)init1和init2都是通過javascript彈出提示框,clickfun()為修改網(wǎng)頁標(biāo)題。
3個函數(shù)單獨執(zhí)行都是成功的,但當(dāng)
1.先執(zhí)行init1函數(shù)后再調(diào)用clickfun函數(shù),會發(fā)現(xiàn)clickfun執(zhí)行失敗。
2.先執(zhí)行init2函數(shù)后再調(diào)用clickfun函數(shù),會發(fā)現(xiàn)clickfun執(zhí)行成功。
難道是navigateToURL會導(dǎo)致ExternalInterface 執(zhí)行失敗??請知道原因的朋友指導(dǎo)下。
復(fù)制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<!--[CDATA[
import flash.external.ExternalInterface;
private function init1():void
{
var url:String = "javascript:alert('執(zhí)行navigateToURL');";
var request:URLRequest = new URLRequest(url);
navigateToURL(request,"_self");
}
private function init2():void
{
ExternalInterface.call("function function1(){alert('執(zhí)行ExternalInterface');}");
}
private function clickfun():void
{
ExternalInterface.call("function function2(){window.document.title = '更改后的標(biāo)題';}");
}
]]-->
</mx:Script>
<mx:Button x="150" y="92" label="1" click="init1()"/>
<mx:Button x="544" y="92" label="2" click="init2()"/>
<mx:Button x="404" y="315" label="更改標(biāo)題" click="clickfun()"/>
</mx:Application>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<!--[CDATA[
import flash.external.ExternalInterface;
private function init1():void
{
var url:String = "javascript:alert('執(zhí)行navigateToURL');";
var request:URLRequest = new URLRequest(url);
navigateToURL(request,"_self");
}
private function init2():void
{
ExternalInterface.call("function function1(){alert('執(zhí)行ExternalInterface');}");
}
private function clickfun():void
{
ExternalInterface.call("function function2(){window.document.title = '更改后的標(biāo)題';}");
}
]]-->
</mx:Script>
<mx:Button x="150" y="92" label="1" click="init1()"/>
<mx:Button x="544" y="92" label="2" click="init2()"/>
<mx:Button x="404" y="315" label="更改標(biāo)題" click="clickfun()"/>
</mx:Application>
函數(shù)init1和init2都是通過javascript彈出提示框,clickfun()為修改網(wǎng)頁標(biāo)題。
3個函數(shù)單獨執(zhí)行都是成功的,但當(dāng)
1.先執(zhí)行init1函數(shù)后再調(diào)用clickfun函數(shù),會發(fā)現(xiàn)clickfun執(zhí)行失敗。
2.先執(zhí)行init2函數(shù)后再調(diào)用clickfun函數(shù),會發(fā)現(xiàn)clickfun執(zhí)行成功。
難道是navigateToURL會導(dǎo)致ExternalInterface 執(zhí)行失敗??請知道原因的朋友指導(dǎo)下。
您可能感興趣的文章:
- 深入理解C語言 static、extern與指針函數(shù)
- C語言基礎(chǔ)知識點解析(extern,static,typedef,const)
- c語言中static和extern的用法詳細(xì)解析
- C++中的extern “C”用法詳解
- C++中的extern聲明變量詳解
- 解決Eclipse add external jars運行出現(xiàn)java.lang.NoClassDefFoundError的方法
- 提示出現(xiàn)unresolved external symbol _main的解決方法
- C/C++ 中extern關(guān)鍵字詳解
- 實例詳解C/C++中extern關(guān)鍵字
- 詳解C語言正確使用extern關(guān)鍵字
相關(guān)文章
Google Analytics在Flash cs3下的使用教程分析
因為工作的原因,最近使用到Google Analytics組件,這個組件在網(wǎng)上的資料很多,但是大部分都是詳談組件的優(yōu)勢的,具體的使用沒有很詳細(xì)的說明2009-02-02ActionScript 3.0中用XMLSocket與服務(wù)器通訊程序(源碼)
一個簡單的基于XMLSocket的封裝類2009-02-02Actionscript 3.0中Singleton實現(xiàn) 修正篇
說明:上一篇"一個簡單的Actionscript的單態(tài)模式類"的實現(xiàn)在Actionscript中報錯,具體原因會在這篇Blog中詳細(xì)說明。2009-02-02