2010-09-01 204 views
1

在下面的例子中(是的,我在我的時間線上進行編碼,而我試圖解決這個問題 - 我知道,我知道)我在HTML頁面中加載SWF,然後指示SWF從當前網址。查詢參數將包含要播放的視頻的來源。如何將URLVariables結果分配給一個字符串變量?

這看起來很直截了當,但我不能讓myURL = urlVars.videoloc;工作。更具體地說,urlVars.videoloc似乎是undefined而不是從URL中保存查詢參數。所有其他變量都是正確的;定義了wholeURLurlVars

//Initialize Global Event Listener 
player.addEventListener(Event.ADDED_TO_STAGE, getPlay, false, 0, true); 

//Function to play the video 
function getPlay(e:Event):void { 
    var wholeURL:String = ExternalInterface.call("window.location.search.toString"); 
    var urlVars:URLVariables = new URLVariables(wholeURL); 
    var myURL:String = urlVars.videoloc; //<--- Trouble, returning 'undefined' 
    errorBox.text = "videoloc="+urlVars.videoloc+"\nwholeURL="+wholeURL+"\nurlVars="+urlVars+"\nmyURL="+myURL; //<--- The reason I know it is returning 'undefined' 

    if (myURL) { 
     player.load(myURL); 
     player.play(); 
    } 
} 

回答

3

理想情況下,您應該使用調試器來檢查您的URLVariables對象的構成。

如果你無法做到的事情簡單的方法,你可以這樣做追溯其內容:

for (var parameter:String in urlVars) { 
    trace(parameter + "=" + urlVars[parameter]); 
} 

正如你所看到的,你可以通過內部使用for in循環urlVars每個參數步驟。

我猜videoLoc是你的第一個參數嗎?看看我的這個測試的結果:

var address:String = "http://www.google.ca/search?q=test&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a"; 
var urlVars:URLVariables = new URLVariables(address); 

for (var parameter:String in urlVars) { 
    trace(parameter + "=" + urlVars[parameter]); 
} 

的這個輸出是:

aq=t 
rls=org.mozilla:en-GB:official 
client=firefox-a 
http://www.google.ca/search?q=test 
ie=utf-8 
oe=utf-8

見發生了什麼事q參數?爲了解決這個問題,只使用文本過去?

var address:String = "http://www.google.ca/search?q=test&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a"; 
var urlVars:URLVariables 
    = new URLVariables(address.substr(address.indexOf('?')+1)); 

for (var parameter:String in urlVars) { 
    trace(parameter + "=" + urlVars[parameter]); 
} 
+0

謝謝你煮下來在這樣一個容易掌握的方式。 我以爲我使用URLVariables是不正確的 - 我想在某種程度上它是。在問號之後提取子字符串的技巧。 備註 - 使用調試器,但獲得有用的輸出沒有太大的運氣。需要努力。 – Structure 2010-09-01 08:57:20

相關問題