0

我在我的 Flex 3 网站上的深度链接有问题。我希望人们能够链接到网站的不同部分。我还希望能够在浏览器栏中输入 url 并被带到我网站的特定部分。另外,我需要默认打开#view=2。

我在设置默认 #view=2 时遇到问题。因此,它应该检查浏览器片段以查看它是否是网站的有效部分。如果是,那么它应该调用 parseUrl() 并打开站点的该部分。到现在为止还挺好。问题是如果循环找不到有效的视图编号,如何将默认值设置为 view=#2?

这是我的代码:

private function initBrowserManager(): void {

    browserManager = BrowserManager.getInstance();
    browserManager.addEventListener(BrowserChangeEvent.BROWSER_URL_CHANGE, parseUrl);
        browserManager.init("","My Website");

    if(browserManager.fragment != null){

         for (var j:uint = 0; j < ComboBoxDP.length; j++){
            if(browserManager.fragment == "view="+ComboBoxDP[j].series){
                            parseUrl();
                            break;
            }


         }

    }


 }

我试图添加这一行:else{browserManager.setFragment("view="+ 2); parseUrl();}我能想到的所有地方,但到目前为止还没有运气。我知道答案会很简单。有什么建议么?

谢谢你。

-拉克西米迪

4

1 回答 1

0

我假设代码的一些意图,但我会使用布尔值:

var initialFragmentValid:Boolean = false;
if(browserManager.fragment != null){
     for (var j:uint = 0; j < ComboBoxDP.length; j++){
        if(browserManager.fragment == "view="+ComboBoxDP[j].series){
            initialFragmentValid = true;
            break;
        }
     }
}

if (!initialFragmentValid) {
    // set the default
    browserManager.setFragment("view=2");
}

// always parse initially because we'll have a fragment regardless
parseUrl();
于 2011-01-28T22:13:06.263 回答