Recent Questions
Q: The AJAX sample for tree menu script on website does not have any styling applied at the moment.
I am assuming that it would support full styling with AJAX as well.
Is this correct?
A: You can use any style and templates for the AJAX sample.
Create a menu and set style you need using Individual Item Styles.
To enable AJAX Tree Menu use the following menu parameters:
var tajax=1;
Then set your menu in such way:
var tmenuItems = [
["Deluxe Tree: XP Style","", "", "", "", "XP Title Tip", "", "0", "", "data-samples/data-ajax5.js", ],
["+Samples Gallery","", "", "", "", "XP Title Tip", "", "0", "0", "", ],
["|Samples Block 1","", "", "", "", "", "", "", "", "data-samples/data-ajax.js", ],
["|Samples Block 2","", "", "", "", "", "", "", "", "data-samples/data-ajax.js", ],
["|Samples Block 3","", "", "", "", "", "", "", "", "data-samples/data-ajax.js", ],
];
Each .js file must contain menuItems variable for the submenu in the following format:
var tmenuItems = [
[text, link, icon1, icon2, icon2, tip, target, itemStyle, submenuStyle, jsFileName],
];
Where jsFileName - .js filename on the server that contains tmenuItems variable for the submenu.
For example:
var tmenuItems = [
["Home","testlink.htm", "", "", "", "Home Page Tip", "", "", "", "", ],
["Product Info","", "", "", "", "Product Info Tip", "", "", "", "data-samples/data-ajax2.js", ],
["Samples","", "", "", "", "Samples Tip", "", "", "", "data-samples/data-ajax4.js", ],
["Purchase","testlink.htm", "", "", "", "Purchase Tip", "", "", "", "", ],
["Support","", "", "", "", "Support Tip", "", "", "", "", ],
["|Write Us","mailto:[email protected]", "", "", "", "", "", "", "", "", ],
];
Q: I have a web site in which I am using Deluxe Menu in the top frame as a menu that crosses the frame and a menu in the lower frame that uses it as a menu in the same frame.
However, if a user selects the menu in the upper frame they get the menu that is associated with the menu of the lower frame.
The configuration files are names differently.
Is there a setting that needs to be set for the menu to distinguish between the two menus instantiations?
A: I suppose that you have two entries of dmenu.js file on your site in the tag.
You must have only one entry of dmenu.js file.
Please, delete the same code.
You should write so:
<head>
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menu2.files/";</script>
<script type="text/javascript" src="menu2.files/dmenu.js"></script>
<!-- (c) 2006, by Deluxe-Menu.com -->
</head>
<body>
...
<div>
<SCRIPT src="deluxe-menu_files/data-deluxe-menu.js" type=text/javascript></SCRIPT>
</div>
...
<div>
<SCRIPT src="deluxe-menu_files/data-deluxe-menu11.js" type=text/javascript></SCRIPT>
</div>
...
</body>>
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: I just noticed as well that I cannot change the spacing of the buttons.
Right now the buttons are tight together, how do I create a gap between each dhtmlmenu button?
A: You can paste the separator.
Please, see the following parameters:
//------- Separators -------
var separatorWidth = "10";
var separatorHeight = "20";
var separatorAlignment = "center";
var separatorImage = "C";
var separatorVWidth = "150";
var separatorVHeight = "10%";
var separatorVImage = "image.jpg";
You can create separators using menuItems, for example:
var menuItems = [
["item 1"],
["-"], // this item is separator
["item 2"],
];
You can also use this parameter:
var itemPadding = "4px";
You can also set multiple values, for example:
"2px 15px 5px 5px";
(top, right, bottom, left)