Recent Questions
Q: I created a custom error page for a site, but the menu would not display.
I found that this was due to the erroneous "current directory" in the bad link test, for a non-existent directory.
which is: level2/level3/
I changed the script code from:
<script type="text/javascript"> var dmWorkPath = "DMworkfiles/";</script>
<script type="text/javascript" src="DMworkfiles/dmenu.js"></script>
to:
<script type="text/javascript"> var dmWorkPath = "DMworkfiles/";</script>
<script type="text/javascript" src="/DMworkfiles/dmenu.js"></script>
adding the "/" before "DMworkfiles/dmenu.js" source reference allowed the .js file to be found in the root directory and the menu would display.
The problem is that the little menu "expansion" arrow .gif cannot be found in the "current working directory" of level2/level3/. just little "blanks" show.
I tried changing:
var dmWorkPath = "DMworkfiles/";
to:
var dmWorkPath = "/DMworkfiles/";
but that did not enable the display of the arrows.
I also had to prefix all of the links in the menu with a "/" to indicate the root directory because of the "current directory" for the bad page.
I hope I have explained the problem sufficiently.
What am I doing wrong or missing here?
A: You can use additional parameters to make menu paths absolute:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
These parameters allow to make images and links paths absolute.
For example:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
var menuItems = [
["text", "index.html", "icon1.gif", "icon2.gif"],
];
So, link path will be look so:
http://domain.com/pages/index.html
Images paths will be look so:
http://domain.com/images/icon1.gif
http://domain.com/images/icon2.gif
Please, try to use these parameters
Q: I want to buy your product today, but have a few questions:
How do I change the font style for java menu templates to 9pt Verdana bold, but leave the sub-menus 9pt Verdana normal? I understand there’s a "fontStyle" variable, but is there an "itemfontStyle"? How do I make the left hand padding greater for the menu? I’m using the XP Style 1 and the far left top menu item is running up against my left hand border. I want to add about 10px of spacing to the left of the menu. How do I make the options in a menu have equal spacing? For instance, if there are 5 items in the menu, how can each have 100% / 5?
A: You can use Individual Item styles to set specific parameters for eachitem or submenu.
1.
var fontStyle=["normal 9pt Verdana","normal 9pt Verdana"]; //for subitems
//style for the top items
var itemStyles = [
["itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],
];
2., 4. You should specify itemPadding parameter in "px". You shouldadd "px" in your style for subitems:
var menuStyles = [
["menuBackColor=#F2F3F2","menuBorderWidth=0","itemSpacing=1","itemPadding=4px","smOrientation=undefined"],
];
Notice also that you can set multiple value for itemPadding parameter,for example:
itemPadding=4px 10px 4px 10px
top right bottom left
4. You should set the exact width for the java menu templates:
var menuWidth="500px";
and set width for the top items using Individual styles:
["itemWidth=100px","itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],
Unfortunately it is not possible to specify item's width in '%' inIndividual styles. The following width parameters won't work.
var menuWidth="100%";
["itemWidth=20%","itemHeight=21px","itemBackColor=#F2F3F2,#1665CB","fontStyle='bold 9pt Verdana','bold 9pt Verdana'"],
Q: I can not figure out why my submenus are not opening next to the javascript menu horizontal? I have included a picture so you can see what I am talking about. When I am in the turner program they pop up just fine but on my website they don't.
A: See, the problem is that the script can't get css properties of the object if they are described in separate .css block (or file).In other words, you can't get the value of "POSITION: absolute" attribute of the object if the object doesn't have this property within inline style (style="POSITION:absolute;"). To get the value you should move .css style into style="" attribute.
Please, try to add your
css file -> inline css, for example:
You should add style="POSITION: absolute; TOP: 0px"
to the
<div id=div_name>
So, you'll have:
<DIV id=div_name style="POSITION: absolute; TOP: 0px">
Try that.
Q: I can't figure out how to get menu items to swap images to use like a traditional image rollover. In the Dhtml menu, I can change the style background without needing images, or I can use generic images as a background, but I have situations where I need to use unique images for each state of a button.
These unique image buttons contain text and graphics, and there are different images for different states: normal, mouse over, mouse down.
A: The menu has only two states normal and mouseover.
You should use Individual Item Styles.
Please, see the example of Deluxe Menu here:
http://deluxe-menu.com/data-templates/vista-style-02-template-sample.html
You should use "itemBackImage" parameter.
var itemStyles = [
["itemWidth=92px","itemBorderWidth=0","fontStyle=normal 11px Tahoma","fontColor=#FFFFFF,#FFFFFF","itemBackImage=btn_greenblack.gif,btn_green.gif"],
];