2014-09-29 55 views
0

那麼標題基本上就是這麼說的。 我希望能夠鏈接到Flash動畫中的提示點Flash提示要點:從網站鏈接到Flash動畫中的特定點

我已經在Google中搜索和搜索,但是我可以看到的所有內容都是從閃存鏈接到基於查詢點的網站。
想法是這樣的: 我在Flash中創建了一個包含多種語言的動畫。
我想在我的網站上創建多個鏈接。用戶點擊他們的語言鏈接,並在他/她的語言顯示的正確「提示」點打開電影。

我認爲這可以通過提示點來完成,但我不是真正的Flash專家,無法知道這是如何工作的。 希望別人能爲我提供一些可靠的信息!

M.

回答

0

您可以嘗試在鏈接地址中使用變量。這意味着只需在鏈接網址的末尾添加?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; 
}