Example 6: Grouped MenuItem Instances With Titles Using Pure JavaScript : Menu 2 « GUI Components « JavaScript DHTML






Example 6: Grouped MenuItem Instances With Titles Using Pure JavaScript

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <title>Example 6: Grouped MenuItem Instances With Titles Using Pure JavaScript</title>

        <!-- Standard reset and fonts -->
        <link rel="stylesheet" type="text/css" href="./build/reset/reset.css">
        <link rel="stylesheet" type="text/css" href="./build/fonts/fonts.css">

        <!-- CSS for Menu -->
        <link rel="stylesheet" type="text/css" href="./build/menu/assets/menu.css">
 
        <!-- Page-specific styles -->
        <style type="text/css">

            body { margin:.5em; }

        </style>

        <!-- Namespace source file -->
        <script type="text/javascript" src="./build/yahoo/yahoo.js"></script>

        <!-- Dependency source files -->
        <script type="text/javascript" src="./build/event/event.js"></script>
        <script type="text/javascript" src="./build/dom/dom.js"></script>

        <!-- Container source file -->
        <script type="text/javascript" src="./build/container/container_core.js"></script>

        <!-- Menu source file -->
        <script type="text/javascript" src="./build/menu/menu.js"></script>

        <!-- Page-specific script -->
        <script type="text/javascript">

            YAHOO.example.onWindowLoad = function(p_oEvent) {

                var oMenu = new YAHOO.widget.Menu("menuwithgroups", { fixedcenter: true });

                // Add MenuItem instances to the first group

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Mail", 
                            { url:"http://mail.yahoo.com"}
                        )
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Address Book", 
                            { url:"http://addressbook.yahoo.com"}
                        )
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Calendar", 
                            { url:"http://calendar.yahoo.com"}
                        )
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Notepad", 
                            { url:"http://notepad.yahoo.com"} 
                        )
                    );


                // Add MenuItem instances to the second group

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Local", 
                            { url:"http://local.yahoo.com"}
                        ),
                        1
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Maps", 
                            { url:"http://maps.yahoo.com"}
                        ),
                        1
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Travel", 
                            { url:"http://travel.yahoo.com"}
                        ),
                        1
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Shopping", 
                            { url:"http://shopping.yahoo.com"} 
                        ),
                        1
                    );


                // Add MenuItem instances to the third group

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Messenger", 
                            { url:"http://messenger.yahoo.com"}
                        ),
                        2
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! 360", 
                            { url:"http://360.yahoo.com"}
                        ),
                        2
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Groups", 
                            { url:"http://groups.yahoo.com"}
                        ),
                        2
                    );

                oMenu.addItem(
                        new YAHOO.widget.MenuItem(
                            "Yahoo! Photos", 
                            { url:"http://photos.yahoo.com"} 
                        ),
                        2
                    );

                oMenu.setItemGroupTitle("Yahoo! PIM", 0);
                oMenu.setItemGroupTitle("Yahoo! Search", 1);
                oMenu.setItemGroupTitle("Yahoo! Communications", 2);                

                oMenu.render(document.body);
    
                oMenu.show();

            }


            YAHOO.util.Event.addListener(window, "load", YAHOO.example.onWindowLoad);
            
        </script>

    </head>
    <body>

        <h1>Example 6: Grouped MenuItem Instances With Titles Using Pure JavaScript</h1>
        <p>This example demonstrates how to title groups of MenuItem instances.  The Menu API also supports building a menu like this <a href="example05.html">using existing markup</a>.</p>

    </body>
</html>
           
         
  








yui.zip( 3,714 k)

Related examples in the same category

1.Popup Menu
2.AtJsMenu Demo
3.Example 1: Basic Menu From Existing Markup
4.Example 2: Basic Menu From Pure JavaScript
5.Example 3: Grouped MenuItem Instances From Existing Markup
6.Example 4: Grouped MenuItem Instances Using Pure JavaScript
7.Example 5: Grouped MenuItem Instances With Titles From Existing Markup
8.Example 7: Multi-tiered Menu From Existing Markup
9.Example 8: Multi-tiered Menu From Pure JavaScript
10.Example 9: Handling Click Events
11.Example 10: Listening For DOM-Related Events
12.Example 11: MenuItem Configuration Properties
13.Example 12: Setting Configuration Properties At Runtime
14.Example 13: Multi-tiered Menu with Progressive Rendering of Submenus
15.Website Left Nav Example (with submenus built from JavaScript) 1
16.Website Left Nav Example (with submenus built from markup) 2
17.OS-Style Programs Menu Example
18.Website Top Nav (with submenus built from JavaScript) 3
19.Website Top Nav (with submenus built from markup) 4
20.Drop down menu and sub menu
21.Vertical menu and image menu
22.Emulate XP start menu
23.xmenu-xlayer-3
24.tree-menu
25.menu for applications