Ajax Collapsible Menu Tree by Deluxe-Menu.com
Ajax Collapsible Menu Tree

Menu Screenshots

Ajax Collapsible Menu Tree Javascript Navigation Bar Tutorial

Features

Compatibility              
  • Full cross-browser compatibility including IE, Netscape, Mozilla, Opera, Firefox, Konqueror and Safari on Windows, Mac OS and Linux
  • Menu can be populated from a database using ASP, PHP, etc.
  • Search engine friendly
  • Support for any doctypes
  • Fits for secure sites
  • Section 508 compliant
Cost Effective
Shell Script Menu Ajax Collapsible Menu Tree
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
Professional Look-n-feel
  • Entirely customizable look-n-feel
  • A lot of pre-designed ajax collapsible menu tree samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings
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



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • Submenus drop down over all the objects of the page (select, flash, object, embed, applet). If for some reasons a submenu can't drop down over an object, the latter will be hidden for a time when the submenu is shown.
  • These effects will make your menu more attractive and stylish. You can cast a shadow on the menu and submenus, set transparency. Among available transitional effects there are such as fade, mosaic, random dissolve, slide out and many others.
  • Create individual styles and assign them to any submenu and item. Use individual styles to achieve stunning effects!

Recent Questions

Q: How do your users normally indicate which page a web visitor is on, by using your navigation bar submenu?

A: Deluxe Menu has only two states normal and mouseover.

Try to do the following things:

- delete   var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, for
example:

<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript">  var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript">  var pressedItem=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>

You can also set a pressed item using Javascript API:

function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)

Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.

But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page. That is why you should write your own code on PHP.



Q: Typically in order to generate a menu with multiple layers I’d put a pipe character in front of the menu text..  For example:

 ["|Page Admin","/admin/handoutadmin.php", , , , "_new", , , , ],
     ["||Student Pages","/admin/handoutadmin.php?type=1", , , , "_new", , , , ],
     ["||Teacher Pages","/admin/handoutadmin.php?type=2", , , , "_new", , , , ],
     ["||Family Letters","/admin/handoutadmin.php?type=4", , , , "_new", , , , ],
     ["||Transparencies","/admin/handoutadmin.php?type=3", , , , "_new", , , , ],

  However, when I try to do it with dm_ext_addItem it actually SHOWS the pipe character and doesn’t create any menu levels at all. 
For example:

dm_ext_addItem(0, 0, ["Add a Handout to this Lesson", "", "", "", "", "", ""]);

dm_ext_addItem(0, 0,  ["|Student Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);

dm_ext_addItem(0, 0,  ["|Teacher Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);

How can I generate multiple levels of the menu with javascript?

A: I suppose that your code is not valid
dm_ext_addItem(0, 0,  ["|Teacher Page", "/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);

Try to write it in the following way:
dm_ext_addItem(0, 0,  ["|Teacher Page", "/admin/handoutadmin.php?type=", "", "", "", "_new", ""]);



Q: Can i install and run this on a server running OS X?


A: Yes, you can use Deluxe Menu on Mac OS X.

To create your menu on MAC you can use HTML version of Deluxe Tuner (for MAC OS). You can find it here:

http://deluxe-menu.com/deluxe-tuner-info.html


Q: We are registered users of the Deluxe Menu software. Today I tried to use the Javascript API, but there is something I do not understand and want to ask for support.

First, I set up a very simple menu:

  var menuItems=[
['Menu 1'],
['|Submenu 1'],
['Menu 2'],
['|Submenu 2'],
];

This menu is built via dm_init().

Then, I inspect the menu (in Firebug):

>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]

Ok, there are three submenus. Now I am going to delete one of them:

>>> dm_ext_deleteItem(0, 0, 1)

"Menu 2" disappears on the screen, this works as expected. But now when I re-inspect the menu using the API, I find that the API reports exactly the same as before:

>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]

So, it seems the report function continues to know about the original menu structure and reflects it. Am I using the API in a wrong way?

The problem I want to solve is to remove the entire menu dinamico dhtml, in order to rebuild it dynamically. Because I did not see a function aimed to this functionality, my plan was to delete all main menu entries subsequently until the main menu inspector no longer reports an entry. Is there (a better) way to achieve this?

A: Unfortunately, dm_ext_deleteItem() only change visibility of theseitems.

It doesn't delete them completely.

We'll try to fix it in the next versions of Deluxe Menu.