Atahualpa Submenus by Deluxe-Menu.com
Atahualpa Submenus

Menu Screenshots

Atahualpa Submenus Java Dhtml Menus Fade

Features

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 atahualpa submenus samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings
Flat Drop Down Dhtml Atahualpa Submenus
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
Cost Effective
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!



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • Build right-click menus for your site. For this purpose you should appoint a peculiar method for the object you want. The current X,Y of the mouse pointer or your own ones can be used for the context menu.
  • Design menus absolutely based on CSS (Cascading Style Sheets). It is possible to apply the personal CSS styles for every elements of the menu.
  • When the submenu is bigger than the visible page area, the size of submenu will be automatically decreased. To view 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 automagically scrolled! You can also define width and height for each submenu.

Recent Questions

Q: Hi, I need to know if it is possible to accomplish the following functionalities with your tree-menu library.

1. I need to have two or more trees in the same page
2. I need to have a checkBox in each node and through a JavaScript function be able to add the selected nodes into another tree.
3. I need to eliminate the nodes that has check=true
4. I need to populate on-demand the tree using AJAX
5. I need to implement drag&drop through the use of the mouse events on the tree nodes
6. How would the tree behave with 10000 nodes??
7. I need to have a tree within another element that uses scroll
such as a DIV or SPAN (fixed area). When collapsed or expanded, the area should remain its original size.


A: 1. You can add any number of the menus on the one page.
2, 3, 5. Yes, you can do it. But you should create your own server-side script (for example, php) that will do it. The menu doesn't support such a feature.
4. Unfortunately, you can't use the AJAX-like technology in the Deluxe Tree such as in Deluxe Menu.
6. It is possible that the loading speed can be lower if the menu is very large. But it doesn't take so much time.
Yes, you can notice some delay in IE, but in over browsers it works better.
Deluxe Tree works fast, but 10000 is a large value. Please, try atrial version of Deluxe Tree.
I tried to create large menus on my machine: P4 3GHz, 512RAM WinXP SP2
It takes:
- 1000 items ~ 10 sec
- 2000 items ~ 40 sec
7. You can paste Deluxe Tree into the <table> or <div>.


Q: Can I use an Item in the html menu for text and get the text to wrap within a predefined menuWidth ?

A: You should set the following parameter:

  var noWrap = 0;

or use <br> tags within menuItems.

Q: I know. I have two menus on the page and I am not using beforeItemImage orafterItemImage for the top menu in javascript (the one you referenced below), but I need it for the second menu. The parameters for that menu are in mainnav_data.js.

Even when I only call dmWorkPath and dmenu.js once, it does not work.

A: See, it is not correctly to use image-based items:

["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "0", "", "", "", "", ],

and specify beforeItemImage/afterItemImage parameters. They won't work in that case.

You can create such buttons in the following ways:
1) Use image-based menu (images with text).

Create normal and mouse-over state images (with text) for each item:
["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/new.gif", "mainnav_data.files/new2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/xxxxx.gif", "mainnav_data.files/xxxxx2.gif", "", "_self", "", "", "", "", "", ],


2) Use combined background for the menu in javascript items (images without text).

  var beforeItemImage = [,]; //left-side image for normal and mouse over state
  var itemBackImage = [,]; //background or image for normal and mouse over state
  var afterItemImage = [,]; //right-side image for normal and mouse over state
  var beforeItemImageW = '';
  var afterItemImageW = '';
  var beforeItemImageH = '';
  var afterItemImageH ='';

But you should create a small images in any Graph Editor, for example:
button_n_back.gif
button_n_left.gif
button_n_right.gif
button_o_back.gif
button_o_left.gif
button_o_right.gif

You cannot use these two methods together!


Q: Can you please give me an example of how I would return the full path to the selected item of the web site menu?

A: See the following example:

function getFullPath(mInd){
  var result='';

// get pressed item
  var params = dm_ext_getMenuParams(mInd);
if (!(params[2]>=0)) return '';

function getPathForItem(mInd,smInd,itInd){
// get for this item
  var params = dm_ext_getItemParams(mInd,smInd,itInd);
  var result = params[2]+ '('+ params[3]+')';

// find root item id
if (smInd <= 0) return result;
params = dm_ext_getSubmenuParams(mInd,smInd);

for (  var smInd_=0;smInd_ for (  var itInd_=0;itInd_ itParam = dm_ext_getItemParams(mInd,smInd_,itInd_);
if (itParam[0]=arams[2])// id
return result + '->' + getPathForItem(mInd,smInd_,itInd_);
}
}
return result;
};

return getPathForItem(mInd,params[1],params[2]);
}