Recent Questions
Q: I got the menu to display across frames, but it displays differently in Firefox & Mozillavs. Internet Explorer. Is that to be expected?
In The Mozilla-based browsers, the submenu butts right upunder the main menu – which is how I want it. In IE, it is about 10 pixels below.
Also, I can’t get the submenus to drop down directly under the main menus – they are offset by about 100 pixels to the right.
A: The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, sosubmenus drop down with an offset.
You should create the following frameset structure:
--|------------
   | menu
--|------------
   |
   | submenus
   |
Now a top row has 2 columns and all browsers can determine awidth of the 1st column in the second row.
Q: Is there a way to convert a dhtml javascript tree menu I created into a Deluxe Menu using the same data so I do not have to type in all the names and links of items?
A: Actually menuItems and tmenuItems have a different structure.
var menuItems = [
[text, link, iconNormal, iconOver, tip, target, itemStyleInd, submenuStyleInd, jsFilename],
];
var tmenuItems = [
[text, link, iconNormal, iconOver, iconExpanded, tip, target, itemStyleInd, itemXPStyleInd, jsFilename],
];
We don't have such converter yet. You can try to change your menuItems in any text editor. I suppose it will be easier to convert items in editor than in Deluxe Tuner.
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: Can I add the value of the parameter to the link where I want my application to go when I active a submenu in the menu script?
A: Actually you can add php code inside menu links.
If you define your parameter in .js file you should write yourlinks in the following way, for example:
<?
....
$key = 123456;
....
?>
["Home","www.domain.com/home.php?key=<? echo $key ?>", "", "", "", "", "", "", "", ],
If you define your key parameter in the php file you should move your
menuItems into your php page directly:
<?
....
$key = 123456;
....
?>
<script type="text/javascript">
var tmenuItems = [
['Deluxe Menu','http://deluxe-menu.com','icon.gif',,,,,],
['Deluxe Tree','http://deluxe-tree.com','icon.gif',,'New!',,,],
['Deluxe Tabs','http://deluxe-tabs.com','icon.gif',,'New!',,,],
["Home","www.domain.com/home.php?key=<? echo $key ?>", "", "", "", "", "", "", "", ],
];
dm_init();
</script>