我建议在AS中写一个JSTools.as类来管理这种通讯 附上:
public class JSTools{
/**
* AS调用JS的方法
* */
public static function callJS(functionName:String,... arguments) : void{
if(ExternalInterface.available){
try{
arguments.unshift(functionName);
ExternalInterface.call.apply(null,arguments);
}catch( e : Error){
trace("ERROR : AS 调用JS的方法出错 , 方法 : " + functionName);
}
}
}
/**
* JS调用AS的方法
* */
public static function addCallback(functionName : String, listener : Function) : void {
if (ExternalInterface.available) {
try {
ExternalInterface.addCallback(functionName, listener);
} catch (e : Error) {
trace("ERROR : JS 调用AS的方法出错 , 方法 : " + functionName);
}
}
}
}
AS 调用JS是很简单的 , 这里我就不多说了.
JS调用AS:
1,js获取flash:
function getFlashAiny(name){
var flash = swfobject.getObjectById(name);
if(!flash)
flash =(navigator.appName.indexOf ("Microsoft") !=-1)?window["flashContent"]:document["flashContent"];
if(!flash)
flash = getFlashMovieObject("flashContent");
if(!flash)
flash = getFlash();
return flash;
}
保证在IE,谷歌,FF中都能获取到Flash.
name 既是 : 主HTML的object 的 ID 号: 既是"ISME"
<noscript> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%" id="ISME"> <param name="movie" value="NiuNiuLoader.swf?v="+Date.parse(new Date())/> <param name="quality" value="high" /> <param name="bgcolor" value="#001119" /> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="true" /> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="NiuNiuLoader.swf?v="+Date.parse(new Date()); width="100%" height="100%"> <param name="quality" value="high" /> <param name="bgcolor" value="#001119" /> <param name="movie" value = "NiuNiuLoader.swf?v="+Date.parse(new Date()) /> <param name="allowFullScreen" value="true" /> <param name="allowScriptAccess" value="always"/> <!--<![endif]--> <!--[if gte IE 6]>--> <p> Either scripts and active content are not permitted to run or Adobe Flash Player version 11.1.0 or greater is not installed. </p> <!--<![endif]--> <a href="http://www.adobe.com/go/getflashplayer"> <img src="http://www.adobe.com/p_w_picpaths/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash Player" /> </a> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </noscript>
flashContent : 提示版本安装DIVID号