Recent Questions
Q: I am evaluating your product and would like to display my top menu without a border, but have the dropdown (child menus) all have a border and shadow.
If I change the menuBorderWidth to anything but 0, I get a menu on both the top menus and dropdowns. I need a topBorderWidth and a childBorderWidth.
Is there any way to accomplish this?
A: Yes, you can do it.
Please, set:
var menuBorderWidth=0;
To set border for submenus you should use Individual Submenu styles, for example:
var menuStyles = [
     ["menuBorderWidth=1","menuBorderColor=#9A9CA7"], //style 0
];
var menuItems = [
     ["Home","testlink.html", , , , , , , , ],
     ["Product Info","", "default.files/icon1.gif", "default.files/icon1o.gif", , , , , , ],
         ["|Features","testlink.html", "default.files/icon2.gif", "default.files/icon2o.gif", , , , "0", , ], //style 0
     ["Samples","", "default.files/icon1.gif", "default.files/icon1o.gif", , , , , , ],
         ["|Sample 1","testlink.html", "default.files/icon6.gif", "default.files/icon6o.gif", , , , "0", , ], //style 0
         ["|Sample 2 is Disabled","testlink.html", "default.files/icon6.gif", "default.files/icon6o.gif", , "_", , "-1", , ],
...
You should assign style for the first item in the submenu.
Q: Is there any way to call a javascript function on mouseover from a menu item for a sub navigation bar?
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')", , , , ,]
];
Unfortunately, you can't assign onmouseover/onClick event to each item. However, you can achieve this by using standard html objects within items, for example:
var menuitems = [
["item text
", "index.html"]
];
Q: I have placed my horizontal menu in javascript (1003 px width) in a table whose width is 1003px my dropdowns span from extreme left to extreme right (screen shots attached) by default the dropdown is leaving 20 pixels margins on both the ends which disturbs my layout. This happens when my screen resolution is 1024 x 768, when viewed in higher or wide screen monitors this problem does not arise. Please suggest a solution.
Appreciate your response.
A: This is space to document borders. We've set this space, so that yoursubmenus will not look like the part of browser window. If you wantyou can delete that space.
Open engine file for horizontal menu in javascript - dmenu.js - file in any text editor and find the following code:
space=15;
Change 15 to 0.
space=0;
Q: Typically in order to generate a menu with multiple layers I’d put a pipe character in front of the menu text.. For example:
["|Page Admin","/admin/handoutadmin.php", , , , "_new", , , , ],
["||Student Pages","/admin/handoutadmin.php?type=1", , , , "_new", , , , ],
["||Teacher Pages","/admin/handoutadmin.php?type=2", , , , "_new", , , , ],
["||Family Letters","/admin/handoutadmin.php?type=4", , , , "_new", , , , ],
["||Transparencies","/admin/handoutadmin.php?type=3", , , , "_new", , , , ],
However, when I try to do it with dm_ext_addItem it actually SHOWS the pipe character and doesn’t create any menu levels at all.
For example:
dm_ext_addItem(0, 0, ["Add a Handout to this Lesson", "", "", "", "", "", ""]);
dm_ext_addItem(0, 0, ["|Student Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
dm_ext_addItem(0, 0, ["|Teacher Page","/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
How can I generate multiple levels of the menu with javascript?
A: I suppose that your code is not valid
dm_ext_addItem(0, 0, ["|Teacher Page", "/admin/handoutadmin.php?type=$type", "", "", "", "_new", ""]);
Try to write it in the following way:
dm_ext_addItem(0, 0, ["|Teacher Page", "/admin/handoutadmin.php?type=", "", "", "", "_new", ""]);