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: Is it possible to show a menu item in the simple navigation bar as selected by default to indicate what the current page is?
A: The menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<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>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also 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: There seems to be a "glitch" when I use Firefox.
I have rebuilt the page twice but I always end up with themenu floating to the left, instead of under the main menu (the second or third mouseover will correct the issue). Also, sometimes I have to mouseover twice before the submenu comes up (in I.E.).
I have validated...however I wondered if there could be a conflict in the javascripting (yours and mine). Any suggestions?
A: The reason is in your <!DOCTYPE>.
Try to specify units in "px".
var menuWidth="780px";
var menuHeight="27px";
var smWidth="200px";
var smHeight="200px";
It's necessary to specify exact value for Mozilla browsers. It helpsto position menus correctly.
You can also try to set the following parameter:
var dm_writeAll=1;
Q: I am in the final stages of testing and need some advice and help.
I have two problems I am trying to address.
1) Arrows on dropdown menu select.
2) Load time.
Please notice, I have to use absolute paths for the dropdown menu select to work.
1) I can't get the arrows to show, so I tried to add the code for images in the first bold sentence below.
2) I tried to add the second line for absolute paths for links to increase load time in the second bold sentence. It appears that the load time is increased by about 3 seconds and that the menu is the last to load, even though I have tried to have this as the first html to load.
Neither one of my commands appear to work.
This site has over 10,000,000 items on it, and I can't wait to get this up and running. Your program is the perfect solution for anybody with a website.
A: 1) Now you have:
var arrowImageMain=["mainmenu.files/arrv_blue_2.gif","mainmenu.files/arrv_white_2.gif"];
var arrowImageSub=["mainmenu.files/arr_blue_2.gif","mainmenu.files/arr_white_2.gif"];
You should set your arrows in the following way:
var arrowImageMain=["arrv_blue_2.gif","arrv_white_2.gif"];
var arrowImageSub=["arr_blue_2.gif","arr_white_2.gif"];
2) Your menu is very large. I advise you to us AJAX like technology.
http://deluxe-menu.com/ajax-technology-menu-sample.html
You can also try the following things:
move all <script> calls into <head>, but delete dm_init() function from mainmenu.js file -- move them instead offiles calls, i.e.:
<head>
<script src=mainmenu.js>
...
</head>
...
<div><script>dm_init();</script></div>
It this case data will be loaded when <head> will load, but after thatdropdown menu select must be shown quickly.
Let me know about results.