Recent Questions
Q: At present the javascript drop down menus expand intelligently into the area with more real estate (i.e. up or down). How can I force the menus to only expand down?
A: Set the following parameter:
var subMenuVAlign="bottom";
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: I made a html CD presentation based on cascading drop down menu but it works good only onIE and Google Chrome web browsers.
It doesn't work good on Mozilla Firefox browser. It shows menu properly but there is a problem with normal navigation.
The problem is with paths. I put the main js file in "menu" folder and I also have few folders with many html files in them.
For path I use the following "file:/(direct path to specific html file)". It works fine with IE and Google, but Mozilla/Firefox doesn't show the menu.
I tried also to use prefix "file:/" but it also doesn't show the cascading drop down menu on Mozilla/Firefox.
Is there any way to solve this problem?
Thank you for your answer.
A: It is not correct to add "file:/" in the link field.
You should write:
menu/image.gif
or
../menu/image.gif
You can try also to write links in the following way:
file://html/other/1.html
But I don't think that this will help you.
This is a feature of Firefox browser, Opera and Safari. These browsers cannot determine the root folder ofthe website (D:\ in the examples below) on a local machine (as IE and Google Chrome).
IE: D:\html\other\page.html (works)
Opera: file://localhost/html/other/page.html (link doesn't work)
Google Chrome: file:///D:/html/other/page.html (works)
Safari: file:///html/other/page.html (link doesn't work)
Firefox: file:///html/other/page.html (link doesn't work)
You use relative paths (and your folders have several embedded folders), so your links won'twork correctly in Firefox, Opera and Safari. The reason is not in the menu. Standard linkswon't work too.
So I think that the unique solution in your case is to move ALL link files (1.html,2.html, a.html ...) into the same folder with your index.html file.
Q: Is there any luck with getting your popup menusto work with the dynamic drive script..?
A: Unfortunately we don't work with dynamic drive script.
But I suppose that you can use it with Deluxe Menu without any problems.
But in that case you should move menuItems and dm_init(); function from your data file tothe html page directly.
For example delete the following code from your data file
var menuItems = [
["Aston Martin Page","javascript:ajaxpage('ajaxfiles/external3.htm', 'rightcolumn');\"", "", "", "", "", "", "", "", "", "", ],
];
dm_init();
and paste it in SCRIPT tags on your html page in the place where you want to have a menu:
...
<div>
<script type="text/javascript">
var menuItems = [
["Aston Martin Page","javascript:ajaxpage('ajaxfiles/external3.htm', 'rightcolumn');\"", "", "", "", "", "", "", "", "", "", ],
];
dm_init();
</script>
</div>