Recent Questions Javascript Tree Control
Q: Can you provide an example of how to dynamically change the menu items at runtime for the dropdown menus?
(asp is fine, but if it needs to javascript that is also ok)
A: 1) You can use API functions to affect items dynamically:
http://deluxe-menu.com/functions-info.html
2)Generate your menu items dynamically from database.
Unfortunately we don't have working example with ASP.
You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files, so,
you should move parameters of a menu from a .js file into an html-page, e.g.:
<!-- JavaScript Tree Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2008, http://deluxe-menu.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
</script>
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html
Q: Is it possible to expand vertical collapse menu in a predefined way?
A: You can expand some items by default.
Add '+' sign before items text in that case:
["+Javascript/DHTML Tree: XP Style","", "deluxe-tree.files/xpicon1_s.gif", "", "", "XP Title Tip", "", "0", "", "", ],
["|Home","testlink.htm", "deluxe-tree.files/icon1_s.gif", "deluxe-tree.files/icon1_so.gif", "", "Home Page Tip", "", "", "", "data-new.js", ],
"Javascript/DHTML Tree: XP Style" item will be expanded by default in that case.
Use var texpanded=1; parameter to expand all menu items by default.
Use function dtreet_ext_expandItem (itemID, expand) API function to expand the specificmenu items dynamically:
http://deluxe-tree.com/functions-info.htmlQ: I know I can fix the width of the entire (horizontal) menu. But is there a way to fix the width of each Item in the menu? I would like each Item to be the same width.
A: Please, try to specify units in "px", for example.
var menuWidth = "600px";
It's necessary to specify exact value for Mozilla browsers. It helpsto position menus correctly.
Try to set individual style for item width:
var itemStyles = [
["itemWidth=120px"],
];
var menuItems = [
["Text1","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text2","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text3","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text4","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text5","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
...
Q: I want to buy your product today, but have a few questions:
How do I change the font style for java menu templates to 9pt Verdana bold, but leave the sub-menus 9pt Verdana normal? I understand there’s a "fontStyle" variable, but is there an "itemfontStyle"? How do I make the left hand padding greater for the menu? I’m using the XP Style 1 and the far left top menu item is running up against my left hand border. I want to add about 10px of spacing to the left of the menu. How do I make the options in a menu have equal spacing? For instance, if there are 5 items in the menu, how can each have 100% / 5?
A: You can use Individual Item styles to set specific parameters for eachitem or submenu.
1.
var fontStyle=["normal 9pt Verdana","normal 9pt Verdana"]; //for subitems
//style for the top items
var itemStyles = [
["itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],
];
2., 4. You should specify itemPadding parameter in "px". You shouldadd "px" in your style for subitems:
var menuStyles = [
["menuBackColor=#F2F3F2","menuBorderWidth=0","itemSpacing=1","itemPadding=4px","smOrientation=undefined"],
];
Notice also that you can set multiple value for itemPadding parameter,for example:
itemPadding=4px 10px 4px 10px
top right bottom left
4. You should set the exact width for the java menu templates:
var menuWidth="500px";
and set width for the top items using Individual styles:
["itemWidth=100px","itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],
Unfortunately it is not possible to specify item's width in '%' inIndividual styles. The following width parameters won't work.
var menuWidth="100%";
["itemWidth=20%","itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],