1

SWFアドレスに次のスイッチ/ケースを使用しています。

switch (e.value)
{
    case "/A" :
        function A();
        break;

    case "/B" :
        function B();
        break;

    case "/C" :
        function C();
        break;

    case "/" :
        break;

}

問題は、私がいずれかのセクション(A、B、またはC)にいるときです...別のレベルのリンクがあります。たとえば、次のようになります。

www.my-site.com/A/next-level-goes-here

www.my-site.com/A/something-else-in-the-A-level

www.my-site.com/A/third-thing-in-the-A-level

Aの内部にネストされて発生するすべてのケースを記述したいのですが、どうすればよいですか?

function anythingNestedInsideOfA()
{
 // handle all the stuff inside of A section here
}
4

2 に答える 2

2

ifとの組み合わせを使用しますsubstr

var url:String=e.value;

if (url=="/A") {
 A();
} else if (url.substr(0,3)=="/A/") {
 anythingNestedInsideOfA();
} else if (url=="/B") {
 B();
} else if (url.substr(0,3)=="/B/") {
 anythingNestedInsideOfB();
} ...
于 2010-09-21T20:10:52.457 に答える
1

私はこのタイプのアーキテクチャを使用しません。私の観点からは、そのURLのテールをそのレベルを担当するオブジェクトに渡す必要があります。この場合、「A」を処理しながら処理し、それを取り除いて残りをそのオブジェクトに渡し、そこでAのコンテンツを表示することができます...など。おそらくそれはStackOverflowのより一般的で大きなトピックです。

于 2010-09-22T14:11:18.023 に答える