Recent Questions
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> Q: Can you answer a few questions?
1 Can I use Hebrew in the menus easily?
2 Can I create menus that go right to left instead of left to right for Hebrew?
A: You're able to use any characters for Deluxe Menu in the same way asyou use them for standard html page.
The only issue is that submenus can be shown in incorrect positionwhen you're using dir=rtl for your page.
var dmRTL = 0;
Set this parameter to 1 if you're using right-to-left direction of html page <HTML dir=rtl>.
Use also
var smViewType = 2;
for right-to-left languages.
Please try a trial package of Deluxe Menu, http://deluxe-menu.com.
Q: I am trying to create a multicolumn dhtml navigation menu and nothing appears when I upload it to my server. I am attaching my menu called menu.js that I have created and placed in a folder called menudir.
Can you please advise, thank you.
A: You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html
Deluxe 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">dhtml navigation 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: Is there a way to hide a menu options using either CSS or the java api based on the site user for the mouseover menu?
A: Deluxe Menu supports Javascript API.
You can find more info here:
http://deluxe-menu.com/dynamic-functions-sample.html
You can try to use API functions in that case:
function dm_ext_changeItemVisibility (menuInd, submenuInd, itemInd, visibility)
To disable items you should set the target parameter to "_".
You can try to use the following function
function disable() {
dm_ext_changeItem(0, 1, 1, ["", "", "", "", "", "_"]);
}
to disable your items.