Fancy Javascript Tree by Deluxe-Tree.com
Fancy Javascript Tree


Buy Now!  Free Trial Download

Menu Screenshots Fancy Javascript Tree

Fancy Javascript Tree Create Tree Expanding Menu

Features Fancy Javascript Tree

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".
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
Drop Down Menu Tree Example Fancy Javascript Tree
Professional Look-n-feel
  • Entirely customizable look-n-feel
  • A lot of pre-designed fancy javascript tree samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings
Cost Effective
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
Buy Now!  Free Trial Download

Javascript Tree Menu. Expandable Menu.

  • You can set the size of the menu in pixels, percent or other units. The menu may have an absolute or relative position (it can be inserted into the table).
  • Use any necessary font of any color, size and font decoration. Create any available type, thickness and color of a menu.Choose any color for backgrounds of submenus and items. Use special prefixes for image paths and links to make paths absolute.
  • You can assign your own images for lines.

Recent Questions Fancy Javascript Tree

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: Hello, I am using your tabs product inside an ASP.NET AJAX update Panel. The problem is, after an async postback occurs, the php dhtml menu tabs no longer show. Do I need to make user a specific function is called/registered??? Please help.

A: Try to call your data files (files with php dhtml menu parameters) once again after each request.



Q: How can I manage that the last clicked javascript expanding tree item stays tree highlighted?

A: We have the following API function to highlight the pressed item in Javascript/DHTML Tree
function dtreet_ext_setPressedItem (menuInd, itemID)

But unfortunately this function doesn't work for AJAX submenus.

We'll try to add this feature soon (using save state feature).


Q: Can I expand a dynamic tree menu from a link in my html page?

A: Yes, it's possible, please see
http://www.deluxe-tree.com/functions-info.html

function dtreet_ext_expandItem (itemID, expand)
function dtreet_ext_getItemIDByIndex (menuInd, itemInd)