Recent Questions Html Vertical Navigation Bar Tree
Q: Hi there, hope someone could help me out.
We have recently purchased your menu product, and I would like to know how I indicate on a javascript slide menu, the root node that was selected. So in other words, if I have a horizontal navigation and I select the 3rd index along the menu and select something from this, how can I make the 3rd index highlighted?
I am not sure how else to phrase this question and hope this makes sense. You help will be appreciated.
A: You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html
JavaScript Tree Menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<noscript><a href="http://deluxe-menu.com">Javascript Slide 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=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also 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: 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 Javascript/DHTML Tree such as in JavaScript Tree 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.
Javascript/DHTML Tree works fast, but 10000 is a large value. Please, try atrial version of Javascript/DHTML 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 Javascript/DHTML Tree into the <table> or <div>.
Q: Would it be possible at some point to introduce more font decoration options to the mouseover variables, I would like to add bold as a mouseover font decoration, but obviously this is not possible at the moment.
A: Unfortunately, JavaScript Tree Menu doesn't have such a feature. You can onlyset it's color. You cannot set the font of menu item bold when selected.
You should addthe following code in your data file:
function changeFont(obj, over)
{
obj.style.fontWeight = over ? 'bold' : 'normal';
obj.style.fontSize = over ? '13px' : '12px'; // You can not use this line
}
var menuItems = [
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Security</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Ease of Access</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Internet Options</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Windows Firewall</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Network and Internet</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Hardware</div>","", "", "", "", "", "", "", "", ],
Q: How do I make the top nav buttons exactly the same width for each button?
Total menu width is 743px and I have 6 buttons I want the width of each button to be fixed at 123px.
I set var menuWidth="743" but it averages out the buttons based on the text.
A: You should use individual item styles. For example:
var itemStyles = [
["itemWidth=123px"], //style 0
];
var menuItems = [
["Home","testlink.html", , , , , "0", , , ], //style 0
["Product Info","", "deluxe-menu.files/icon1.gif", "deluxe-menu.files/icon1o.gif", , , "0", , , ], //style 0