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: 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.
Q: Is there any way to call a javascript function on mouseover from a menu item for a sub navigation bar?
A: You can use your own javascript functions in the menu items.
You should paste "javascript:some_function()" into item's link field, for example:
var menuItems = [
["text", "javascript:your_function(...)", ...]
];
var menuItems = [
["item text", "javascript:alert('Hello World')", , , , ,]
];
Unfortunately, you can't assign onmouseover/onClick event to each item. However, you can achieve this by using standard html objects within items, for example:
var menuitems = [
["item text
", "index.html"]
];
Q: I am interested in Deluxe Tabs MAC Style.
However before I do I want to make sure that:
- I can change the buttons pictures on both the first row and the second row. There has to be a <img src=" " > tag in the code somewhere, correct?
- I can expand or diminish the number of buttons and links
- Also, I have a question: if I am on "Mac Tab 1" menu, and I click on "Mac Tab 2" menu without clicking on any of the links onthe second row, what is the page that I see? Do I see by default Link 2_1 or do I see some kind of generic page? In other words is there a "main" page for each tab menu and then you have the other pages which correspond to Link 2_1, Link 2_2, etc.?
- Is it possible to remember a visited sub-menu? For example I am on "Mac Tab 2/Link 2_3" and I go to "Mac Tab 4/Link 4_2" and then I come back to "Mac Tab 2". Can the main page for this "Mac Tab 2" be Link 2_3 which was my last visited link on that tab?
A: 1) No, there is no such tag - <img src=" " >
For the main items you should set such parameters:
bbeforeItemImage - left part of the item
bafterItemImage - right part of the item
bitemBackImage - center part of the item
in normal, mouseover and selected states.
And for the subitems (in MAC template) you should set onlybitemBackImage - the center part of the item.
Please, see the code of this template.
2) You can create any number of the buttons and links.
3) You can set links for main items and for the subitems.
For example:
var bmenuItems =
[
["Mac Tab 1","http://deluxe-menu.com",,,,,,],
["|Link 1_1","http://apycom.com",,,,,,"0"],
["|Link 1_2","testlink.htm",,,,,,"0"],
["|Link 1_3","testlink.htm",,,,,,"0"],
So, if you click on "Mac Tab 1" you will go to http://deluxe-menu.com
And if you write so
["Mac Tab 1","",,,,,,],
no page will open.
4) This Tab menu can save pressed item automatically within1 page only. If you open another page, the menu can't remember presseditem. You should do that manually using Javascript and menu parameters( var bselectedItem, var bselectedSmItem) or using any server-sidescript (php, asp, etc.)