Recent Questions
Q: The menu is very large and I am concerned about load speed.
Does the ajax like technology just load the top tabs and then only the sub menus if they are clicked? I have clicked true and added 5 as there are 5 submenus but it does not seem to make any difference.
What can I do to speed up the javascript onclick menu?
A: Check that you've set the following parameter:
var dm_writeAll=0;
Q: You've been helping me with some issues on the Deluxe Tree Menu system my company has purchased and most issues are resolved, so thank you! One big problem remains though and we can't seem to figure it out, so I hope you can help.
What we want is, when a user enters our site from the index (home) page then clicks on a link and the sub-page opens, for the dhtml menu tree to be open to the section the user is in and viewing. We also DO NOT want the browser to save the state of the menu, since that is inconsistent with where the user is in the site. Note: we do not use the Menu on the home page, is this a problem?
Per your tech support email, I've added the expand code, which works going from the home page to sub-pages. However, it interferes with navigating to other sub-pages once your in the site. The menu doesn't keep the section open, it closes back up. You mentioned the expand code has to be entered on every page....is that so in this instance and if so, that's a maintenance nightmare - does a better way exist for this type of menu?
Then we activated the "save state" option and the menu stays open on the sub-pages, but the expand option doesn't work.
It's like they cancel each other out and you can only have one or the other.
Can I get these two to work together? What do I need to do? Is it better to use the XP-style menu?
A: When user clicks the link, the browser loads a new page and the script re-create the dhtml menu tree.
If you want to open the needed section automatically on load you can use the following:
1. Save the state to cookies
2. Use frames
3. Put the special script on each page of site that will open appropriate section.
(dtreet_ext_expandItem)
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)
Q: I’d like to know how to populate the navigation bar menu from a database?
A: Please, see the example of .php file.The content of .php file depends on your database structure.
<?php
// The example for PHP/MySQL.
// MySQL database has the table "menuTable" that contains data for menu items.
// The table has the following fields:
// 1. "text" - item text
// 2. "link" - item link
// 3. "icon1" - item icon (normal state)
// 4. "icon2" - item icon (mouseover state)
function getMenuItems()
{
$jsItems = '';
// Select all records from table "menuTable"
$allItems = mysql_query('SELECT * FROM menuTable;');
// Extract items data from database and build Javascript code for menuItems
while ($itemData=mysql_fetch_array($allItems))
{
$jsItems .= '["'.$itemData['text'].'", "'.$itemData['link'].'", "'.$itemData['icon1'].'", "'.$itemData['icon2'].'"],';
}
// Return Javascript code
return $jsItems;
}
?>
<script>
var menuParam1 = value1;
var menuParam2 = value2;
var menuParam2 = value2;
...
var menuItems = [
// Write Javascript code for menu items
echo getMenuItems();
?>
];
</script>