Recent Questions
Q: In my previous email asking about your menu program's ability to display a different color word on a menu item when the site is on that selected page, I made a mistake - I was experimenting with Vista xp1 style, the black/blue shiny dhtml menu templates.
A: The menu has only two states normal and mouseover. We'll try to add the pressed state in the future.
You can 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: 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: What I mean is I still want the destination page to be static inthe var menuitems but when the javascript side menu item is clicked, it'll run a js on the onclick or mouseup event.
Is this possible?
something like:
var menuItems = [
["text", "home", "javascript:onclick=your_code_here"]
];
A: You can achieve this by using standard html objects within javascript side menu items, for example:
var menuitems = [
["<div onContextMenu='your_code_here'>item text</div>", ""]
];
Actually you can use any html code within menuItems.
Q: I'm having a problem displaying a little white icon arrow on my dhtml foldout menu. I us Adobe Dreamweaver to build my site. When previewing, I found that adding . /.. to the .js file works good and it displays the arrows. But when I Put the menu on the internet it goes back to displaying a blank box like it can t find it again. My menu is in my site's root directory, and I would like to control all my site's pages with it. I am going to have a basic template for the whole site with the dhtml foldout menu on it and I am to building all the pages from that.
If I don't change the link to ../../ the only pages that will work is the one that is in the same directory as my menu files.
A: Try to use absolute paths to your images on the website. Your menu will work correctly inall cases in that case.
var pathPrefix_img="http://www.domain.org/Fundraising/Scrip/";
var arrowImageMain=["data.files/arrv_white_1.gif",""];
var arrowImageSub=["data.files/arr_white_1.gif",""];
or
var pathPrefix_img="";
var arrowImageMain=["http://www.domain.org/Fundraising/Scrip/data.files/arrv_white_1.gif",""];
var arrowImageSub=["http://www.domain.org/Fundraising/Scrip/data.files/arr_white_1.gif",""];