Recent Questions
Q: I downloaded the trial version of Deluxe Tuner and love the menus it makes. I'm havinga major problem centering the expandable menu in a table. I'm using FrontPage 2002 but added thescript into the page via notepad. No matter what I try, the expandable menu stays on the left ofthe table. Do you have any suggestions? I'm sure you must have a list of problemsassociated with FrontPage. Can you please help me?
A: To center the menu on your html page you should set the followingparameter and install the menu in the following way:
var absolutePos=0;
<div align=center>
<script type="text/javascript" src="deluxe-menu/dmenu.js"></script>
</div>
<table width=800>
<tr>
<td align=center width=600><script type="text/javascript"
src="data/data.js"></script></td>
</tr>
</table>
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: How I make sure, that long menu items in dhtml menu sample can wrap into two lines?
A: You should set the following parameter:
var noWrap=0;
Or use standard <br> tags inside item's text:
["International Music X Home<br>Decoration X Books","", "", "", "", "", "0", "0", "", "", "", ],Q: Can I use javascript to get the object (getElementByID). If not howdo I hide my dropdown menu on print?
A: You can add a new button to print your page and call onClick event, soyou should write:
<body ....
onClick="document.getElementById('dm0m0').style.visibility='hidden'; window.print();">
...
</body>
Or you can use the same javascript code from your menu item.
For example:
var menuItems = [
["Print", "javascript:document.getElementById('dm0m0').style.visibility='hidden';
window.print();", icon1, icon2],
];
But if you want to hide the menu when your customers push "File/Print"you should write so:
You must create two functions, for example:
function myprint()
{ document.getElementById('dm0m0').style.visibility='hidden';
window.print();
}
function myprint2()
{ document.getElementById('dm0m0').style.visibility='visible';
window.print();
}
You should add this functions into your code.
And then you must write so:
window.onbeforeprint = myprint;
window.onafterprint = myprint2;