Как использовать navigateToUrl для доступа к html-файлам относительно корня сайта? - PullRequest
1 голос
/ 26 октября 2010

Я пытаюсь сделать вступительную анимацию внутри веб-сайта, и когда анимация завершена или когда вы нажимаете кнопку Пропустить, она переходит к файлу index.html из корня сайта.

Итак, у меня в корневом каталоге сайта есть папка Flash, в которой находится intro.swf, а внутри intro.swf я вызвал метод navigateToURL(new URLRequest("..\index.html"), "_self");. Теперь это не работает. Подскажите, пожалуйста, как определить URL-запрос?

Спасибо.

Ответы [ 3 ]

1 голос
/ 26 октября 2010

Вы знаете, у меня когда-то была странная проблема с областями видимости во Flex.Решением было принудительное создание абсолютного URL-адреса путем ручного анализа loaderInfo.loaderURLПростая версия может быть:

function getAbsoluteURL( pathFromSwf:String, swfURL:String ):String
{
    // if pathFromSwf is already a URL, then just return that.
    if( pathFromSwf.match( /^(http.{3}[^\/]{5,})\/(.*)$/ ) ) return pathFromSwf;
    // this may need to be customized based on your extension/server settings.
    var basePath:Array = swfURL.substr( 0, swfURL.indexOf( ".swf" ) ).split( "/" );
    basePath.pop(); // clear out the swf's name.
    var altPath:Array = pathFromSwf.split( "/" );
    for( var i:int = 0; i < altPath.length; i++ )
    {
        // ".." subtracts from the path/
        if( altPath[ i ] == ".." ) basePath.pop();
        // otherwise append
        else basePath.push( altPath[ i ] );
    }
    return basePath.join( "/" );
}
1 голос
/ 26 октября 2010

Вы пробовали это:

navigateToURL(new URLRequest("../index.html"), "_self");

Использование обратной косой черты - просто опечатка?

0 голосов
/ 26 октября 2010

расположение вашего SWF-файла:

loaderInfo.loaderURL
...