Recent Questions On Demand Tree Menu
Q: We are testing you menu in our application. It is being used in cross frame mode. It works very nicely except a couple issues.
The main one is after loading a new page in the sub menus window when I go back to the main menu to select another option but on the initial mouse over it takes several seconds for the menu to come up. Once the delay of loading the initial submenu is over it loads all others very quickly until a new page is loaded again. Is there a way to optimize the menu to reduce this load time? I have already set dm_writeAll=0 but that only increased the speed of the initial display of the main menu.
And the other question is does the dmObjectsCheck option work in cross frame mode? I have it set =1 and the submenus still underneath objects (such as select list) which have a higher z order.
A: Try to do the following:
move all <script> calls into <head>, but delete dm_initFrame()function from data .js file -- move them instead of files calls, i.e.:
<head>
<script src=data.js>
...
</head>
...
<div><script>dm_initFrame("frmSet", 1, 2, 1); </script></div>
It this case data will be loaded when <head> will load, but after thatmenus must be shown quickly.
Let me know about results.
JavaScript Tree Menu overlap select objects in cross-frame mode.
Q: Can we set the link of a java menu item to a javascript method?
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')", , , , ,]
];
Q: Under Parameters ->> Dimensions ->menuWidth
Even I change the value such as 150px it doesn't have any effect on javascript dhtml menu itself.
Changing menuHeight property such as menuHeight = 123px moves menu down from the top of the page instead of changing height of the menu itself.
I used templates ->> vista -> vista style 3-03 to generate the javascript dhtml menu and modified it.
A: See, you have itemWidth and itemHeight in the Individual Style.
var itemStyles = [
["itemWidth=94px","itemHeight=23px","itemBackColor=transparent,transparent","itemBorderWidth=0", "fontStyle=bold 10px Tahoma","fontColor=#FFFFFF,#FFFFFF", "itemBackImage=data-vista-3-03.files/btn_cyan.gif,data-vista-3-03.files/btn_cyan2.gif"],
];
You cannot set the less value for the menuwidth in that case. You canset only the bigger value:
var menuWidth="550px";
To change the menuHeight you should also use itemHeight parameter, forexample
itemHeight=123px
Q: I need to work it with PHP/MySQL. I have found some information on it in your Support section, but have problems to understand and wonder if you have more information or a working sample of the loading bar with PHP/ MySQL.
A: Info about generating menu (menu items )from a database, please, see:
http://deluxe-menu.com/generate-menu-from-database-xml-php-asp-vb-support.html
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 = [
<?php
// Write Javascript code for menu items
echo getMenuItems();
?>
];
</script>