получить ссылки URL из XML в as3 и установить для каждой кнопки на моей шкале времени - PullRequest
0 голосов
/ 09 января 2012

Прямо сейчас у меня есть статический способ, которым я устанавливаю URL на 5 кнопок, вот пример того, что я делаю:

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("http://www.facebook.com"), "_blank");
}

function fl_ClickToGoToTwitter(event:MouseEvent):void
{
    navigateToURL(new URLRequest("http://www.twitter.com"), "_blank");
}

Я вроде как нюхать на флэш, я вроде отказался от него после Flash MX, но теперь меня попросили сделать просто быстрый слайдер (который, конечно, я рекомендовал jquery, но у них его не было). У меня все работает нормально, но меня спросили, что URL-адреса загружаются из файла XML вместо статического. Не совсем уверен, куда идти отсюда .. Я читал, как читать из XML, но мне нужно установить значения в глобальных переменных?

1 Ответ

1 голос
/ 09 января 2012

Ваш XML:

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

Вы загружаете этот xml в переменную myLinks:

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");
}
...