Recent Questions
Q: I try to use the javascript menu popups to show an image; then when the mouse is over the image I dynamically generate a panel of http links. It works perfectly, but the problem is that I would like to do the same with several images (for instance 2) and different links : I'm not able to do that, whether I change the value of menuItems var or not, I display the same link values on both images (it seems menuItems is a global var and can be set only once).
Have you heard about this problem and could you give me a solution (this is a bit urgent, I have sold this solution to my customers) ?
A: See how you should call dm_popup() functions:
<img src="../../../../fileadmin/img/flag_de.gif" width="50" onMouseOver="return dm_popup(0, 2000, event);" style="cursor: pointer;">
// 0 - is ID of the first menu
....
<img src="../../../../fileadmin/img/flag_fr.gif" width="50" onMouseOver="return dm_popup(1, 2000, event);" style="cursor: pointer;">
// 1 - is ID of the second menu
// 2 - is ID of the third menu
... and so on.Q: Can I use data from a SQL server using ASP for drop down menu code?
A: You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files,
so, you should move parameters of a menu from a .js file into an html-page, e.g.:
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2006, http://deluxe-menu.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
Unfortunately we don't have examples with ASP and SQL.
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html
Q: Would it be possible at some point to introduce more font decoration options to the mouseover variables, I would like to add bold as a mouseover font decoration, but obviously this is not possible at the moment.
A: Unfortunately, Deluxe Menu doesn't have such a feature. You can onlyset it's color. You cannot set the font of menu item bold when selected.
You should addthe following code in your data file:
function changeFont(obj, over)
{
obj.style.fontWeight = over ? 'bold' : 'normal';
obj.style.fontSize = over ? '13px' : '12px'; // You can not use this line
}
var menuItems = [
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Security</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Ease of Access</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Internet Options</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Windows Firewall</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Network and Internet</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Hardware</div>","", "", "", "", "", "", "", "", ],
Q: I activated option "state saving" but I think there's a problem;
when I open the website and click on an item of the menu, the pressed item becomes red
(up to now it's ok), but if I have topress F5 on the keyboard or press on the refresh button
to refresh the web page, the pressed item loses its color red.
I'd like the pressed item in the dhtml expand menu to maintain its color after the refresh command.
How can I solve this problem?
A: Tree Menu doesn't save a presseditem as it saves a tree state.
It works within 1 page only and if youreload the page you should set a pressed item using Javascript API:
function apyt_ext_setPressedItem(menuInd, itemID)
<script type="text/javascript">
var i = 4 //index of the selected item
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>