Portable Tree Menu by Deluxe-Tree.com
Portable Tree Menu


Buy Now!  Free Trial Download

Menu Screenshots Portable Tree Menu

Portable Tree Menu Tree Collapsible

Features Portable Tree Menu

Professional Look-n-feel
  • Entirely customizable look-n-feel
  • A lot of pre-designed portable tree menu samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings
Easy Setup
  • De Luxe Tuner. GUI interface to create your portable tree menu menus easily and in no time
  • Sensible menu parameters for manual editing
Tree Dhtml Transparency Portable Tree Menu
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
Unrivalled Features
  • Scrollable, dragable, floating
  • 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".
Cost Effective
Buy Now!  Free Trial Download

Javascript Tree Menu. Expandable Menu.

  • Tune menu parameters manually or using Deluxe Tuner. Then add several rows of a code within html page - your menu is ready!
  • Use special JavaScript functions for: Dynamic changing of items (text, link, icons and even individual style!). Making a menu item active/disabled. Addition/removing of items. Changing of visibility of items. Collapsing/expanding of items. Getting the information on any menu, submenu and items. Other tricks. But for all that it's not necessary to insert any additional code into all the pages - just specify some additional parameters of the menu.

Recent Questions Portable Tree Menu

Q: I do not see any samples of the code and pages necessary for the drop down menu js works in a cross frame..

A: You should create your menu in Deluxe Tuner, save it.

Create html file with your frame set.

Set ID for the first frameset:
<FRAMESET id=frmSet rows=220,*>
<FRAME id=frame1 src="JavaScript Tree Menu Samples_files/cross-frame-horizontal-1.htm"> //menu frame
<FRAME id=frame2 name=frame2 src="JavaScript Tree Menu Samples_files/testlink.htm"> //content frame
</FRAMESET>

Then you should open your data file in any text editor and change
dm_init(); to dm_initFrame("frmSet", 0, 1, 0);


Q: I am using your Ajax menu and am generally delighted with it. Its ability to load sub menus on the fly is just what I have been looking for.

However, I have noticed in IE7 that it can leave sub menus displayed when you have moused off that particular ajax drop down menu. Can this be fixed?

Also, can you get the menu to disappear when you mouse off the menu, rather than having to hover over another menu or click the page off the menu.

A: See, now you've set the following parameter:
  var smHidePause=-1;

It means that your submenus won't be hidden till you click or scroll your page.

If you want to hide your submenus on mouse out you should set another value, for example:

  var smHidePause=1000;
or
  var smHidePause=500;


Q: I will build menu for several books’ Contents, each book is more than 100 lines and has links. I think if all the books’ contents in 1 *.JS file then it is TOO LOONG!!.
Can I break it down to 1 book for 1*.JS ? How?


A: You cannot divide your menuItems parameter.
You can only use one .js file for your menu parameters and the other.js file for your menuItems = [...];

But you can do it in two ways.

1) You can try to use several menus on the one page, for example:
param.js // file with menu parameters (all parameters before menuItems = [...];)
menu1.js // menuItems for "AC-DC", "ANLOG"
menu2.js // menuItems for "DIGITAL", "WinXP"
menu3.js // menuItems for "MS-Word", "MS-Excel"
In these menu files you should write
menuItems = [
...
];
dm_init();

Then you should install your menu in the following way

<script type="text/javascript" src="param.js"></script>
<table>
...
<script type="text/javascript" src="menu1.js"></script>
...
<script type="text/javascript" src="menu2.js"></script>
...
<script type="text/javascript" src="menu3.js"></script>

But it will be easier to use vertical menu in such case
  var isHorizontal=0;
  var smColumns=1;

2) You can also try to add some code, see the attached example.

In the first file (@MY books (Multiple Col.js) I write menuItems for the first item "AC-DC".
Notice that you should delete comma at the end of the last item
  var menuItems = [

["AC-DC","", , , , , , , , ],
 ["|@Book1","testlink.htm", , , , , , , , ],
...
 ["|@Book3","", , , , , , , , ],
   ["||CH02","", , , , , , , , ],
   ["||CH01","", , , , , , , , ] // delete comma at the end of the last item

];

In the second file (@MY books (1.js) you should write
menuItems = menuItems.concat(

[

["ANLOG","", , , , , , , , ],
 ["|@Book1","", , , , , , , , ],
 ["|@Book2","", , , , , , , , ],
 ["|@Book3","", , , , , , , , ] // delete comma at the end of the last item

]
);

In the third file (@MY books (2.js) you should write
menuItems = menuItems.concat(

[

["DIGITAL","", , , , , , , , ],
 ["|Item 1332","", , , , , , , , ],
["WinXP","", , , , , , , , ],
 ["|Item 1333","", , , , , , , , ],
["MS-Word","", , , , , , , , ],
 ["|Item 1334","", , , , , , , , ],
["MS-Excel","", , , , , , , , ],
 ["|Item 1335","", , , , , , , , ] // delete comma at the end of the last item
]
);

dm_init();

Notice that you should write dm_init(); function in the last file.

In the .html file you should write
...
<tr>
<script type="text/javascript" src="@MY books (Multiple Col.js"></script>
<script type="text/javascript" src="@MY books (1.js"></script>
<script type="text/javascript" src="@MY books (2.js"></script>
</tr>
I hope you understand me.


Q: I have managed to insert a separator in a menu and set the image path but the separator image does not show.

Is there anything else I need to do?


A: Please, see the following parameters:

//------- Separators -------
//--- Separators
  var separatorImage="";
  var separatorWidth="5";
  var separatorHeight="100%";
  var separatorAlignment="right";
  var separatorVImage="images/public/separator.gif";
  var separatorVWidth="3";
  var separatorVHeight="100%";
  var separatorPadding="";

You should set a separator in the menuItems, for example:

  var menuItems = [
["Home","index.cfm", , , , , , , , ],
["-"],
["About Us","about.cfm", , , , , , , , ],

];
Try that.