Recent Questions
Q: Is there a way to have the menu stay expanded in the same exact state when
I click on a menu item of the javascript tree view and go to a new page?
A: There is no need to write additional code on a server side to remember what items were expanded/collapsed.
DHTML Tree Menu can save items state automatically.
Please, see the example of the menu that works with cookies:
http://dhtml-menu.com/tree-examples/tree-menuxp-save-state.html
Set the following parameter:
var tsaveState = 1;
and the menu remembers its structure for each user who visit your page.
Try to expand/collapse items. Then reload the page and you'll see results.
Q: I have placed my horizontal menu in javascript (1003 px width) in a table whose width is 1003px my dropdowns span from extreme left to extreme right (screen shots attached) by default the dropdown is leaving 20 pixels margins on both the ends which disturbs my layout. This happens when my screen resolution is 1024 x 768, when viewed in higher or wide screen monitors this problem does not arise. Please suggest a solution.
Appreciate your response.
A: This is space to document borders. We've set this space, so that yoursubmenus will not look like the part of browser window. If you wantyou can delete that space.
Open engine file for horizontal menu in javascript - dmenu.js - file in any text editor and find the following code:
space=15;
Change 15 to 0.
space=0;
Q: We have several problems with your menu.
Notice when trying to select a drop down item…the item disappears, rather than holding in place as the mouse is over the menu item.
Second, we’d like to know how to expand the width of the main headers and sub headers. Currently, they are not of the same width.
Lastly, we’d like to change the font and load new fonts to match the branding of the menu items.
Please let us know where we can find instructions to make these modifications/customizations.
A: Please, try to write your menuItems parameter correctly.
You should set "iconOver" parameter for each item (you can set "").
Please, see how you should write your menuItems:
["","index.php","nav_home_out.gif","nav_home_over.gif","","_self","0",,,],
["","","nav_experience_out.gif","nav_experience_over.gif","","_self","0",,,],
    ["|Contestants","experience_contestants.php","","","_self","2",,,],
...
> Second, we’d like to know how to expand the width of the
> main headers and sub headers. Currently, they are not of the
> same width.
You should use Individual styles, for example:
var itemStyles = [
["itemWidth=120px","arrowImageMain=image1,image2=home_out.gif,home_over.gif"],     // style 0
["itemBorderWidth=2","itemBorderStyle=solid,solid", "itemBorderColor=#AA0000,#0000FF"],     // style 1
["fontStyle=bold 12px Arial,Helvetica", "fontDecoration=none,underline"],     // style 2
];
var menuItems = [
["","index.php","nav_home_out.gif","nav_home_over.gif","","_self","0",,,],
    ["","","nav_experience_out.gif","nav_experience_over.gif","","_self","0",,,],
...
For submenus you should set the following parameter:
var smWidth="150px";
> Lastly, we’d like to change the font and load new
> fonts to match the branding of the menu items.
You should also use Individual styles.
But you should set this parameter:
var fontStyle="";
And then use different fonts for your items.
Q: What I would like to see is the ability to have a base site navigation menu with all the definitional entries (size, locations, icons, etc.) defined but all the menuitems be called from an Ajax file.
A: You cannot use ajax submenus for the top items.
But you can use several .js file, for example:
params.js //file with all menu parameters (size, locations, icons, etc.)
all code before
var menuItems = [
...
];
dm_init();
data_ajax1.js //data files for ajax submenus
data_ajax2.js
data_ajax3.js
...
main_data.js - data file with the following code:
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
You can also place this code into your html page directly (in the place where you want tohave a menu):
<script type="text/javascript">
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();