Recent Questions Example Create Navigation Tree Using Apex
Q: Our company has been using the trial version of JavaScript Tree Menu and was satisfied enough with initial integration efforts to acquire the license version.
We are interested in making our main dhtml rollover menu items a constant width, but the data.js parameters ( var menuWidth="800px"; var menuHeight="30px"; var smWidth=""; var smHeight="";) don't seem to give us that capability. We dynamically remove main menu items based on user roles and when we do the main menu always re-sizes and the remaining main menu item widths no longer match our sub-menu widths. We're able to adjust for this by using the API but that seems to be a lot of unnecessary coding. If we could keep each main menu item a fixed width, our sub-menu widths would not have to change.
Do you have information on how to accomplish fixed main menu item widths, even better would be an example?
A: Actually you can specify the width and of all or individual dhtml rollover menu items or submenus usingIndividual Item/Submenu styles.
Q: Is it possible to show a menu item in the simple navigation bar as selected by default to indicate what the current page is?
A: The 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 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" 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: Typically in order to generate a menu with multiple layers I’d put a pipe character in front of the menu text.. For example:
["|Page Admin","/admin/handoutadmin.php", , , , "_new", , , , ],
["||Student Pages","/admin/handoutadmin.php?type=1", , , , "_new", , , , ],
["||Teacher Pages","/admin/handoutadmin.php?type=2", , , , "_new", , , , ],
["||Family Letters","/admin/handoutadmin.php?type=4", , , , "_new", , , , ],
["||Transparencies","/admin/handoutadmin.php?type=3", , , , "_new", , , , ],
However, when I try to do it with dm_ext_addItem it actually SHOWS the pipe character and doesn’t create any menu levels at all.
For example:
dm_ext_addItem(0, 0, ["Add a Handout to this Lesson", "", "", "", "", "", ""]);
dm_ext_addItem(0, 0, ["|Student Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
dm_ext_addItem(0, 0, ["|Teacher Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
How can I generate multiple levels of the menu with javascript?
A: I suppose that your code is not valid
dm_ext_addItem(0, 0, ["|Teacher Page", "/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
Try to write it in the following way:
dm_ext_addItem(0, 0, ["|Teacher Page", "/admin/handoutadmin.php?type=", "", "", "", "_new", ""]);
Q: If need to make changes do I need to replace all the files and folder and script in all the web pages? Or are there just one or two files that need to be replaced? Which files or folders?
A: You need to change only your data.js (by default) file. It is thefile with your menu parameters.
Then you should upload this file on your server and may be add somenew images. That is all.