您可以嘗試在鏈接地址中使用變量。這意味着只需在鏈接網址的末尾添加?lang=eng
之類的內容即可。 Flash可以讀取該地址(僅來自HTML嵌入),並且具有根據lang=
部分之後的內容執行某些操作的代碼。
有更好的方法來做到這一點,包括真正的變量解析,但我只是用一個簡單的轉換瀏覽器地址轉換爲字符串,然後提取最後一個(語言)位。只是爲了看看這是否也適用。
只用於測試你需要一個MC和兩個文本框的舞臺上與這些實例名稱:
txt_url
顯示完整的瀏覽器地址
txt_lang
顯示了最終的3個字母的語言代碼
MC_lang
是根據txt_lang
更改框架的(您的)動畫片段
定製:你可以用這兩條線路自定義變量:
var Index_one:int = 5 + int(tempSTR.indexOf("lang="));
這裏5
是因爲lang=
有五個字符。當您更改單詞時,您必須更改編號以匹配單詞/符號長度。
case "eng"
必須將語言代碼選擇匹配(例如:如果你有?lang=english_UK
然後再在代碼就成了case "english_UK"
import flash.display.MovieClip;
import flash.external.ExternalInterface;
var str_url :String = "";
get_Language();
function get_Language() : void
{
// GET LANGUAGE
var url:String = ExternalInterface.call("window.location.href.toString");
if (url != null) //if is not null
{ txt_url.text = url; txt_lang.text = get_lang_URL(url); }
//SET BY LANGUAGE
if (txt_lang.length > 0) //if is not null
{
switch(txt_lang.text)
{
case "eng": MC_lang.gotoAndStop(1); break;
case "jap": MC_lang.gotoAndStop(2); break;
case "bra": MC_lang.gotoAndStop(3); break;
}
}
}
//EXTRACT LANGUAGE VARIABLE FROM ADDRESS
function get_lang_URL (input_str:String):String
{
var tempSTR:String = input_str;
var finalSTR:String = "";
var Index_one:int = 5 + int(tempSTR.indexOf("lang="));
var Index_two = input_str.length - Index_one;
finalSTR = tempSTR.substr(Index_one, Index_two);
return finalSTR;
}