Java Expanding Vertical Menu Tutorial by Deluxe-Menu.com
Java Expanding Vertical Menu Tutorial

Menu Screenshots

Java Expanding Vertical Menu Tutorial Dynamic Menus Xp

Features

Unrivalled Features
  • Scrollable, dragable, floating, right-click menus
  • Keyboard navigation - press Ctrl+F2 to enter the menu
  • Unique Java Script API for altering menu "on-the-fly", without page reloading
  • AJAX technology - loads menu data from the server "on-fly and on-demand".
  • Search feature - add the search area in the menu and type symbols. The found words will be higlighted.
  • Sound support!
High Performance
  • AJAX menu loading - loads web menu data from the server "on-the-fly".
  • Commonly loads quicker than other html page elements
  • UL/LI items structure
  • Runs well with an unlimited number of submenus and items
Java Script Menu Bar Java Expanding Vertical Menu Tutorial
Cost Effective
Seamless Integration
  • Cross-frame support - menus work on frameset-based pages
  • Visible over flash, select boxes, iframes, java applets
  • Multiple menus on the same page
  • Amicable to other scripts and css styles
  • Any HTML code can be used inside menu items
Easy Setup
  • De Luxe Tuner. GUI interface to create your java expanding vertical menu tutorial menus easily and in no time
  • Sensible menu parameters for manual editing



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • Create contextual menus for your pages. For this purpose you should assign a special function for the object you want. The current coordinates of the mouse pointer or your own ones can be used for the contextual menu.
  • When the submenu is larger than the visible area of the page the submenu will be automatically decreased. To see all the submenu items you do not need to use scrollbars or something like that - just put your mouse to the bottom of a submenu and it will be automatically scrolled! You can also specify height and width for each separate submenu.
  • Build menus completely based on Cascading Style Sheets. It is possible to appoint the individual CSS styles for separate elements of the menu.

Recent Questions

Q: I want to change the background color of one of the menu items of the menu horizontal.If I understand correctly I go to INDIVIDUAL STYLES and should be able tochange the background color for one of the menu items there. Under item appearance I tried to change itemBackColor - but I can't seem to make it take affect (I tried clicking OK but its under the Style Names, so thats probably not it.

Please advise.

A: You should click "Edit Individual Styles" button.

On the 'Item Styles' tab click "Add style" button.

Set itemBackColor and click "OK" button.

Select the item you want to change the style for and assign new style for it. Go to Item Parameters window 'Item style' field.

  var itemStyles = [
["itemBackColor=#EB2999,#590937"], //style0
];

  var menuItems = [
["Home","testlink.html", "", "", "", "", "", "", "", "", "", ],
["Product Info","", "default.files/icon1.gif", "default.files/icon1o.gif", "", "", "0", "", "", "", "", ], //style0



Q: What I would like to see is the ability to have a base site navigation menu with all the definitional entries (size, locations, icons, etc.) defined but all the menuitems be called from an Ajax file.

A: You cannot use ajax submenus for the top items.
But you can use several .js file, for example:

params.js //file with all menu parameters (size, locations, icons, etc.)
all code before
  var menuItems = [
...
];
dm_init();

data_ajax1.js //data files for ajax submenus
data_ajax2.js
data_ajax3.js
...

main_data.js - data file with the following code:

  var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();

You can also place this code into your html page directly (in the place where you want tohave a menu):

<script type="text/javascript">
  var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();


Q: I want to use
function dtreet_ext_userRightClick(itemID) {

alert(itemID[0]); ???

return false;
}

But how do I refer to tmenuItems array using itemID in the javascript?
For example, if I want to pop a link text, should I use alert(itemID[0]))?
It doesn't work.
Please let me know how I refer to the menu.

A: You should use the following function to get item's info:

dtreet_ext_getItemParams (0, itemID);

For example:

<script type="text/javascript">

function dtreet_ext_userRightClick(itemID)
{   var link = [];
link = dtreet_ext_getItemParams (0, itemID);
//Returns item parameters in the array:
// [item_id, index_within_submenu, parentID, level, has_child, child_count, expanded, text, link, target, tip, align, icons, hidden, disabled, visible]

alert(link[7]);


return false;
}
</script>




Q: Can you please give me tips on how I can style all menuitems to have font bold when selected and normal font when not selected?

A: Unfortunately, Deluxe Tree doesn't have such a feature. You can onlyset it's color. You cannot set the font of menu item bold when selected.

You can set menu item's font bold onMouseover, see example here:
http://deluxe-tree.com/data-templates/vista-style-7-template-sample.html

You should addthe following code in your data file:

function changeFont(obj, over)
{
obj.style.fontWeight = over ? 'bold' : 'normal';
obj.style.fontSize = over ? '13px' : '12px'; // You can not use this line
}

  var tmenuItems = [

["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Security</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Ease of Access</div>","", "", "", "", "", "", "", "", ],
 ["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Internet Options</div>","", "", "", "", "", "", "", "", ],
 ["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Windows Firewall</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Network and Internet</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Hardware</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Programs</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Appearance</div>","", "", "", "", "", "", "", "", ],
 ["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>User Accounts</div>","", "", "", "", "", "", "", "", ],
 ["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Personalization</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Sound and Speech</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Additional Options</div>","", "", "", "", "", "", "", "", ],
];

Please, notice also that you should add this function every time whenyou change your menu in Deluxe Tuner application, as Tuner deletesthis function.