2012-01-09 4 views
0

は、今私は、URLのへの5つのボタンを設定し、静的な方法を持って、私のタイムライン上で各ボタンに設定され、ここで私がやっているもののサンプルです私はFlash MXの後でそれをあきらめたが、ちょっと速いスライダーを作るように頼まれた(私はjqueryを勧めたが、それはないだろう)。私はすべてうまく動作しているが、私は、URLは静的ではなくXMLファイルからロードされていることを尋ねられています。ここからどこに行くのかはっきりしていません。xmlから読み込む方法を読みましたが、グローバル変数に値を設定する必要がありますか?AS3でXMLからURLリンクを取得し、

答えて

1

あなたのXML:

<?xml version="1.0" encoding="utf-8"?> 
<MYXML> 
    <FACEBOOK>"http://www.facebook.com"</FACEBOOK> 
    <TWITTER>"http://www.twitter.com"</TWITTER> 
</MYXML> 

あなたは個人用リンク変数にこのXMLを読み込む:

var myLinks:XML; 
var urlRequest:URLRequest = new URLRequest("link to your xml file"); 
var urlLoader:URLLoader = new URLLoader(); 
urlLoader.addEventListener(Event.COMPLETE, urlLoader_completeHandler); 
urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, urlLoader_securityErrorHandler); 
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, urlLoader_ioErrorHandler); 

function urlLoader_completeHandler(event:Event):void 
{ 
    myLinks = new XML(event.target.data); 
} 

function urlLoader_securityErrorHandler(event:SecurityErrorEvent):void 
{ 
    // Do you have crossdomain.xml? 
} 

function urlLoader_ioErrorHandler(event:IOErrorEvent):void 
{ 
    // Houston, we have a problem! 
} 

Object(root).grid_slider.links.twitter.addEventListener(MouseEvent.CLICK, fl_ClickToGoToTwitter); 
Object(root).grid_slider.links.facebook.addEventListener(MouseEvent.CLICK, fl_ClickToGoToFacebook); 

function fl_ClickToGoToFacebook(event:MouseEvent):void 
{ 
    navigateToURL(new URLRequest(myLinks.FACEBOOK.toString()), "_blank"); 
} 

function fl_ClickToGoToTwitter(event:MouseEvent):void 
{ 
    navigateToURL(new URLRequest(myLinks.TWITTER.toSting()), "_blank"); 
} 
+0

を、私はこのエラーを取得しています:TypeError例外:エラー#1009:のプロパティまたはメソッドにアクセスすることはできませんnullオブジェクト参照。 \t at original_fla :: Symbol2_15/fl_ClickToGoToFacebook( )TypeError:エラー#1009:nullオブジェクト参照のプロパティまたはメソッドにアクセスできません。 \t at original_fla :: Symbol2_15/fl_ClickToGoToTwitter() xmlが読み込まれていませんか? – Andres

+0

'urlLoader_completeHandler'メソッドにトレース関数を追加して、何を得るかを確認することができます。また、XMLファイルがロードされる前に 'navigateToURL'メソッドの1つを呼び出すことも可能です。私はこの状況の引き金を追加しませんでしたが、あなたはそれを行うべきです。 –

+0

そうですね!ありがとう、これは美しく働いた。 – Andres

関連する問題