Saturday, March 29, 2014

Dojo Menu example

A simple dojo menu example using MenuBar, MenuBarItem and DropDownMenu combination. This example also highlights use of disabled and menu separator.

HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Dojo Menu Example</title>
<link rel="stylesheet" href="../js/1_8_3/dijit/themes/claro/claro.css">
<style type="text/css">
@import "../js/1_8_3/dojo/resources/dojo.css";
@import "../js/1_8_3/dijit/themes/claro/claro.css";
@import "../js/1_8_3/dijit/themes/claro/document.css";
@import "../js/1_8_3/dojox/grid/enhanced/resources/claro/EnhancedGrid.css";
@import "../js/1_8_3/dojox/grid/enhanced/resources/EnhancedGrid_rtl.css";
</style>
<script>dojoConfig = {parseOnLoad: true}</script>
    <script src='../js/1_8_3/dojo/dojo.js'></script>
    <script src='../js/menu.js'></script>
</head>
<body class="claro">
<div style="width:450px;height:200px;margin-left:200px;">
<br>
<div id="menuId">Menu examples using MenuBar and Dropdown menu</div>
</div>
</body>
</html>

JS file - menu.js

 require(["dijit/MenuBar",
         "dijit/PopupMenuBarItem",
         "dijit/Menu",
    "dijit/DropDownMenu",
    "dijit/MenuItem", 
    "dijit/MenuSeparator",
    "dijit/PopupMenuItem",
    "dojo/domReady!"
], function(MenuBar,PopupMenuBarItem,Menu,DropDownMenu, MenuItem, MenuSeparator, PopupMenuItem){
 
    var menubar = new MenuBar({});
  
      
    var ddMenu = new DropDownMenu();
  
  
    ddMenu.addChild(new MenuItem({
        label: "Menu Item 1"
    }));
    ddMenu.addChild(new MenuItem({
        label: "Menu item 2 - Disabled",
        disabled: true
    }));
 

    ddMenu.addChild(new MenuSeparator());
  
    var ddSubMenu = new DropDownMenu();

    var pmItem = new PopupMenuItem({
        label: "Submenu option",
        popup: ddSubMenu
    });
  
    ddSubMenu.addChild(new MenuItem({
        label: "menu item"
      
    }));
  
    ddMenu.addChild(pmItem);
 
    menubar.addChild(new PopupMenuBarItem({
        label: "Menu Examples",
        popup: ddMenu
    }));

    menubar.placeAt("menuId");
    menubar.startup();
  
});

Image:





No comments:

Post a Comment