Recent Questions
Q: What I try to make is a menu dhtml with items having a border of only 1 px, also between the menu items. However it seems that Deluxe menu draws a 1 px line around every menu item giving an effective border line of 2 px between the area where the items touch each other. I want to have 1 px border also on the areas where the items touch each other.
Any suggestion how to fix this?
A: If you want to have the 1px border between the items only you canuse separators.
Please, see the following parameters:
//--- Separators
var separatorImage=""; //for subitems
var separatorWidth="5";
var separatorHeight="100%";
var separatorAlignment="right";
var separatorVImage="images/public/separator.gif"; //for the top items
var separatorVWidth="1";
var separatorVHeight="100%";
var separatorPadding="";
You should set a separator in the menuItems, for example:
var menuItems = [
["Home","index.cfm", , , , , , , , ],
["-"],
["About Us","about.cfm", , , , , , , , ],
];
Q: I cannot see the arrow.gif's in my rollover drop down menu.
Here is my code:
var arrowImageMain=["menudir/arrow_main3.gif","menudir/arrow_main3.gif"];
var arrowWidthSub=0;
var arrowHeightSub=0;
var arrowImageSub=["menudir/arrow_sub5.gif","menudir/arrow_sub4.gif"];
Do I need to put the arrow's somewhere else?
A: You should check the following parameter:
var pathPrefix_img="data-samples/images/";
Please check that you have the correct path to your aroows relative to the folder withindex.html file.
For example, you have:
menudir/
menu.js
dmenu.js
arrow_main3.gif
...
index.html
In menu.js file you should write:
var pathPrefix_img="menudir/";
var arrowImageMain=["arrow_main3.gif","arrow_main3.gif"];
var arrowImageSub=["arrow_sub5.gif","arrow_sub4.gif"];
or
var pathPrefix_img="";
var arrowImageMain=["menudir/arrow_main3.gif","menudir/arrow_main3.gif"];
var arrowImageSub=["menudir/arrow_sub5.gif","menudir/arrow_sub4.gif"];
Q: I know. I have two menus on the page and I am not using beforeItemImage orafterItemImage for the top menu in javascript (the one you referenced below), but I need it for the second menu. The parameters for that menu are in mainnav_data.js.
Even when I only call dmWorkPath and dmenu.js once, it does not work.
A: See, it is not correctly to use image-based items:
["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "0", "", "", "", "", ],
and specify beforeItemImage/afterItemImage parameters. They won't work in that case.
You can create such buttons in the following ways:
1) Use image-based menu (images with text).
Create normal and mouse-over state images (with text) for each item:
["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/new.gif", "mainnav_data.files/new2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/xxxxx.gif", "mainnav_data.files/xxxxx2.gif", "", "_self", "", "", "", "", "", ],
2) Use combined background for the menu in javascript items (images without text).
var beforeItemImage = [,]; //left-side image for normal and mouse over state
var itemBackImage = [,]; //background or image for normal and mouse over state
var afterItemImage = [,]; //right-side image for normal and mouse over state
var beforeItemImageW = '';
var afterItemImageW = '';
var beforeItemImageH = '';
var afterItemImageH ='';
But you should create a small images in any Graph Editor, for example:
button_n_back.gif
button_n_left.gif
button_n_right.gif
button_o_back.gif
button_o_left.gif
button_o_right.gif
You cannot use these two methods together!
Q: I want to be able to have all of the submenus start at the top of the menu. For example, when I hover across each of my menu items in a vertical level, I want the sublevel menu to start at the very top of the menu, not out beside the menu option. How can I achieve this
A: You can have such effect only for the first subitems.
Others subitems will have Y offset.
Please, see the attached example.
You should adjust the following parameters:
var topDX=-116;
var topDY=-31;
var DX=-148;
var DY=-32;