Javascript Multilevel Treemenu Category Builder by Deluxe-Tree.com
Javascript Multilevel Treemenu Category Builder


Buy Now!  Free Trial Download

Menu Screenshots Javascript Multilevel Treemenu Category Builder

Javascript Multilevel Treemenu Category Builder Generator Tree

Features Javascript Multilevel Treemenu Category Builder

Cost Effective
Seamless Integration
  • 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
Menu Scrolling Tree Javascript Multilevel Treemenu Category Builder
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
High Performance
  • AJAX menu loading - loads web menu data from the server "on-the-fly".
  • Commonly loads quicker than other html page elements
  • Runs well with an unlimited number of submenus and items
Easy Setup
  • De Luxe Tuner. GUI interface to create your javascript multilevel treemenu category builder menus easily and in no time
  • Sensible menu parameters for manual editing
Buy Now!  Free Trial Download

Javascript Tree Menu. Expandable Menu.

  • You can set default expanded/collapsed items and submenus.
  • After clicking on menu item selected item becomes highlighted.
  • 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.
  • There is no need to write additional code on a server side to remember what items were expanded/collapsed. Javascript/DHTML Tree can save items state automatically!

Recent Questions Javascript Multilevel Treemenu Category Builder

Q: The problem that I am still experiencing (Im sure I have missed something obvious!) - is that all the pages open when you click on the relevant links but they always open with the "About Us" tab showing and then as soon as you click on a different tab you see it highlight for a second and then it just reverts back to the About Us tab even though the page has changed. As the site opens I obviously want the first tab to be highlighted as opposed to the 2nd one and the each page highlights and holds as you go through the menu.


A: See, you set
  var bselectedItem=2;

That is why "About us" tab is selected.
You should change the selected tab depending on the page you are now.

This Tabs menu can save pressed item automatically within1 page only. If you open another page, the menu can't remember presseditem. You should do that manually using Javascript and menu parameters(  var bselectedItem) or using any server-side script (php, asp, etc.)

Deluxe Tabs doesn't support API functions which can return theselected tab.

If your site is written on PHP you can set "bselectedItem" parameter based on your link beforeyou call tabs-kasper.js file.

For example, move "bselectedItem" parameter from tabs-kasper.js file to yourcode.

<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
  var bselectedItem=<?php echo $seltabs; ?>;
</script>
<SCRIPT src="tabs-kasper.js" type=text/javascript></SCRIPT>
</TD>

You should define seltabs using server side script.

You can also set on every page before you call tabs-kasper.js file(for example, for solution tab).

<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
  var bselectedItem=4;
</script>
<SCRIPT src="tabs-kasper.js" type=text/javascript></SCRIPT>
</TD>

Try that.


Q: How do I highlight the current tab in a hover tab menu?

A: This Tabs menu can save pressed item automatically within1 page only.
If you open another page, the menu can't remember presseditem.
You should do that manually using Javascript and menu parameters
(  var bselectedItem and   var   var bselectedSmItem) or using any server-side script (php, asp, etc.)

Deluxe Tabs doesn't support API functions which can return theselected tab.

If your site is written on PHP you can set "bselectedItem" and "varbselectedSmItem" parameters based on your link beforeyou call your data file.

For example, move "bselectedItem" and "  var bselectedSmItem" parametersfrom your data file to your code.

<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
  var bselectedItem=<?php echo $seltabs; ?>;
  var bselectedSmItem=<?php echo $selsmtabs; ?>;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>

You should define seltabs and selsmtabs using server side script.

You can also set it on every page before you call data.js file, forexample:

<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
  var bselectedItem=4;
  var bselectedSmItem=3;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>

Try that.


Q: There is one other issue I am hoping you can help with? When the dhtml web menu drops down in Safari over a SWF -- it disappears. I have added the function dm_ext_ruleObjectHide() code to the top of my data file. Can you please advise what else I can try?

A: Submenu couldn't overlap flash in Safari correctly.

And the following code:
// Safari detect
if ((parseInt(navigator.productSub)>=20020000) &&(navigator.vendor.indexOf('Apple Computer') != -1) &&(navigator.product=='Gecko'))
return true;

in function
function dm_ext_ruleObjectHide()
{
// Safari detect
if ((parseInt(navigator.productSub)>=20020000) &&(navigator.vendor.indexOf('Apple Computer') != -1) &&(navigator.product=='Gecko'))
return true;
else
return false;
}

cause flash to disappear in Safari.

You can try to write this function in the following way:

function dm_ext_ruleObjectHide()
{
return false;
}




Q: I have small problems with your javascript menu system.

#1. I am creating a multi-level menu, am I limited to a gird format or can every item have a variable column width?

#2. With submenus, I want to have the submenu be the same width as the parent cell, is there a simple command for this, or do I have to guess the column widths until it fits correctly?

#3. In those same submenus, I have items that are longer than the parent, is there a word wrap or a way to define a break, rather than having the scroll feature?


A: 1) You should use Individual Item Styles.
For example:
  var itemStyles = [
    ["itemWidth=120","itemBorderWidth=1","itemBorderStyle=solid,solid","itemBackColor=#ACF88B,#ACF88B","itemBorderColor=#329309,#329309"], //style0
    ["itemWidth=100","itemBorderWidth=1","itemBorderStyle=solid,solid","itemBackColor=#FFFFFF,#FFFFFF","itemBorderColor=#1B92E9,#1B92E9"], //style1
    ["itemWidth=130","itemBorderWidth=1","itemBorderStyle=solid,solid","itemBackColor=#FF9684,#FF9684","itemBorderColor=#EC7575,#EC7575"], //style2
    ["itemWidth=150","itemBorderWidth=1","itemBorderStyle=solid,solid","itemBackColor=#84F9FF,#84F9FF","itemBorderColor=#00B8C1,#00B8C1"], //style3
];
  var menuStyles = [
    ["smColumns=2"], //style0
];

    ["Home","testlink.htm"],
    ["Samples","testlink.htm"],
      ["|Group 1","", , , , , "0", , , ],
      ["|Group 2","", , , , , "1", , , ],
      ["|Group 3","", , , , , "2", , , ],

...
    [" More Samples","testlink.htm"],
      ["|Group 1","", , , , , "3", "0", , ],
      ["|Group 2","", , , , , "1", , , ],

Where "0", "1", "2", "3" - style number in itemStyles.

2) You can also use Individual Item Styles.

  var itemStyles = [
     ["itemWidth=120px"],
];
  var menuStyles = [
     ["smWidth=120px"],
];

    ["Product Info","", "default.files/icon1.gif", "default.files/icon1o.gif", , , "0", , , ], // itemStyles
      ["|Features","testlink.html", "default.files/icon2.gif", "default.files/icon2o.gif", , , , "0", , ],
      ["|Installation","", "default.files/icon2.gif", "default.files/icon2o.gif", , , , , , ], // menuStyles

3) Try to set this parameter:

  var noWrap=0;