Recent Questions
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: How would I use the submenu feature to display itself only if a person is logged in. such as if a person logged in then the member area would expand, else it would always stay closed with only the login username section showing?
A: Unfortunately it is not possible. You can only add items depending onthe logged user.
You should use API functions:
see more info:
http://deluxe-menu.com/functions-info.html
For example, you can use:
function dtreet_ext_insertItem (menuInd, parentItemID, itemInd, itemParams)
function dtreet_ext_deleteItem (menuInd, itemID)
function dtreet_ext_showItem (itemID, visibility)
function dtreet_ext_expandItem (itemID, expand)
Q: I just downloaded the beta for IE8
http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/Install.htm
And it looks like the java script menu code has a lot of issues with it. Are you guys going to be supporting IE8?
A: Yes, we're planning the full support for IE8 as well as for all major browsers.
All issues will be fixed with final version of IE8.
Q: I activated option "state saving" but I think there's a problem;
when I open the website and click on an item of the menu, the pressed item becomes red
(up to now it's ok), but if I have topress F5 on the keyboard or press on the refresh button
to refresh the web page, the pressed item loses its color red.
I'd like the pressed item in the dhtml expand menu to maintain its color after the refresh command.
How can I solve this problem?
A: Tree Menu doesn't save a presseditem as it saves a tree state.
It works within 1 page only and if youreload the page you should set a pressed item using Javascript API:
function apyt_ext_setPressedItem(menuInd, itemID)
<script type="text/javascript">
var i = 4 //index of the selected item
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>