0

私は基本的に、モバイル (iphone) Web サイトの Web サイト ナビゲーションを作成するために垂直ブレッドクラムを作成しています。「Premier League」をクリックすると、http://news.bbc.co.uk/sport1/hi/football/default.stmがどのように機能するかに似ています。

Asp:Menu コントロールと SiteMapDataSource を使用して、サイトマップ内の現在のレベルのリンクのみをバインドし、それらの親を見つけてリストの一番上に手動で挿入します。結果のナビゲーションの例は次のようになります: About, Who Are We Are, What We Do, Locations

var mi = new MenuItem();
mi.NavigateUrl = node.Url;
mi.Text = node.Title;
mi.ToolTip = node.Description;

MobileMenu.Items.AddAt(0, mi);

これはすべて問題なく、完全に機能します。ただし、この動的に挿入された最上位の MenuItem は、別の背景色でスタイル設定する必要があります。上記の例では、「About」はその下の 3 つの項目よりも暗い背景色になります。

しかし、MenuItem には、これを行うための明白なプロパティはありません。

位置 0 に挿入する MenuItem のスタイルを動的に設定するにはどうすればよいですか?

4

1 に答える 1

0

これに対する答えとして、jQuery の li:nth-child() メソッドを使用してクラスを li に設定した後、Page.ClientScript.RegisterStartupScript() を使用します。

private const string HighlightScript =
        "<script language=\"javascript\">\n" +
        "$(\"ul.top li:nth-child(4)\").addClass(\"menu-Fourth\");" +
        "</script>";

public void AddHighlightScript(string script, string name)
    {
        Page.ClientScript.RegisterStartupScript(GetType(), name, script);
    }

他の誰かが解決策を持っている場合は、共有してください。

于 2010-09-29T08:35:05.790 に答える