Recent Questions
Q: How can I set the top-level items to be transparent for the dhtml dropdown?
A: You should create Individual Item and Submenu styles with transparent itemBackColor and assign it for the top items:
var itemStyles = [
["itemBackColor=transparent,transparent","itemBorderWidth=0","fontColor=#000000,#000000"],
];
var menuStyles = [
["menuBackColor=transparent","menuBorderWidth=0"],
];
More info you'll find here:
http://deluxe-menu.com/individual-item-styles-info.html
http://deluxe-menu.com/individual-submenu-styles-info.htmlQ: Hello. I have noticed that when you expand a menu and then click to another page, the menu is collapsed on the next page. I read about "state saving" and tried the parameter which did not work. Is there a way to accomplish this?
A: You can see the example for state saving here:
http://dhtml-menu.com/tree-examples/tree-menuxp-save-state.html
This menu saves its state.
To enable this mode you should include dtree_ss.js file intoyour html page and set the following parameter:
var tsaveState = 1;
See, if you open pages (with menus) from different folder itmeans that you open different menus. So, when you change a state, forexample, of the first menu within "content/" folder and then openanother page with the menu within "content/subfolder/", browsers looks for anothercookie file and can't find it and the second menu stays in a defaultstate. Is it clear?
Q: Hi, I was wondering if there is a way to leave a main navigation item highlighted when in that section. For example if I clicked on "Contact Us" and when I am on the contact us page, the "Contact us" navigation would still be highlighted. I appreciate any help you might have, thanks!
A: The menu has only two states normal and mouseover. We'll try to add the pressed state in the future.
You can set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.You can't get this ID after you reload your page. That is why you should write your own code on PHP.
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.