Recent Questions Tree Save State
Q: I would like to add the javascript API to a link contained in my website that will have the corresponding item in the deluxe-tree menu act as if it was "clicked".
Presumably I need to add the script (for example) <A HREF="http://deluxe-menu.com/features-info.html" TARGET="_self" "..javascriptHere ..">. Can you give me an example please of what code goes into there.
I presume I use dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion) but where do I get the ????Ind data from and make the javascript call in the above link.
A copy of a working example together with where to get the data , perhaps on your own web pages, would help.
A: Javascript/DHTML Tree 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 dtreet_ext_setPressedItem (menuInd, itemID)
<script type="text/javascript">
var i = <?php echo $selitem; ?>;
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>
You should define selitem using server side script.
Q: Thank you for your prompt replay- the menu now works! However, the multi level dhtml menu takes forever to load up as demonstrated on our website. I was wondering whether there was any possible way of getting it to load up faster.
A: I have noticed no delays in the menu loading.
But your menu is big enough. You can try to us AJAX technology.
http://deluxe-menu.com/ajax-technology-menu-sample.html
Try to set the following parameter also:
var dm_writeAll=1;
Q: How does one go about changing the parameter or the JavaScript so that a vertical menu selection stays 'on'? In other words, the vertical menu remains selected, perhaps in a background color that shows the user this menu choice is selected and the user is in the selected menu area.
A: To save your navigation path you should set the following parameter:
var saveNavigationPath = 1;
The menu keeps items highlighted during menu navigation.
0 - disabled, 1 - enabled (default).
You can highlight menu items by default in two ways:
1) Set the pressed item on each page idividually using the following parameter:
var pressedItem = -2;
The toggle mode. Sets an index of an item that will be highlighted by default.
-2 - the toggle mode is disabled;
-1 - the toggle mode is enabled, but no items highlighted by default;
0,1,2,3,... - index of highlighted item in a top-level menu.
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, for example:
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript"> var pressedItem=2;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
2) Set the pressed item/subitem using dm_ext_setPressedItem () function.
Please see more info here:
http://deluxe-menu.com/highlighted-items-sample.html
Q: I have created a menu for a product tutorial. It consists of about 50 topics, each of which is listed in my menu. I’m wondering if there is a way to gray out the menu link for the open tutorial topic?
A: Unfortunately, JavaScript Tree Menu doesn't have such a feature.
You should write your own code, for example, on PHP.
You can try to use the following function
function disable() {
dm_ext_changeItem(1, 1, 1, ["", "", "", "", "", "_"]);
}
to disable your items.
The example you can find on our site
http://www.deluxe-menu.com/dynamic-functions-sample.html
Please, see the source code.