Recent Questions
Q: We recently bought your product.
We are developing in ASP.NET (VB) and we have a problem making you deluxe menu dynamic to suit our needs. We are using the Deluxe Menu.
The problem is each time a page with dhtml nav loads, we want to be able to generate the menuItems variable to reflect the options the individual user has, so it can't be hard coded into data.js it MUST be provided by an aspx file and attached somehow. I can't work out how to attach the variable (even a static one) as a separate file, so if you can do it with a static one, we can extend it to a dynamic one later.
For example the JS in the data.js file we want the MenuItem dimension you be loaded in a seperate file, some kind of include.
var menuItems = [
["Home","index.aspx", "", "", "", "_self", "", "", "", "", "", ],
["About","about.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Contact","contact.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Help","", "", "", "", "", "", "", "", "", "", ],
["|HowTo Register","RegHelp.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|FAQ","FAQ.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Dos 'n' Don'ts","DoDont.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Workshop","workshop.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Gold Run","", "", "", "", "_self", "", "", "", "", "", ],
["|About Goldrun","goldrunAbout.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Veiw Sites","GoldDistribSites.aspx", "", "", "", "_self", "", "", "", "", "", ],
["My Run","", "", "", "", "", "", "", "", "", "", ],
["|About","aboutmyrun.aspx", "", "", "", "_self", "", "", "", "", "", ],
["TICs","", "", "", "", "", "", "", "", "", "", ],
["|About","abouttics.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Metro","", "", "", "", "", "", "", "", "", "", ],
["|About","aboutmetro.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Distribution","", "", "", "", "", "", "", "", "", "", ],
["|About","DistribAbout.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Status","DistribStatus.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|News","DistribNews.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Display Units","DistribDisplay.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Team","", "", "", "", "_self", "", "", "", "", "", ],
["|View Sites","DistribSites.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|TIC Budget","", "", "", "", "_self", "", "", "", "", "", ],
];
Hope this makes sense.
A: You can move
var menuItems = [
...
];
dm_init();
dhtml nav code from your data file to your page (template) directly:
<script>
var menuItems = [
...
];
dm_init();
</script>
Q: The secondary javascript menu style sub menu under Aircraft doesn't line up the same as in Tuner..
A: Deluxe Menu doesn't work correctly (incorrect submenu position) if youhave complex frame structure.
The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, so submenus drop down with an offset.
You should create, for example, the following frameset structure:
--|------------|--
| top |
--|------------|--
| menu |
--|------------|--
| |
| submenus |
| |
Now a second row has 3 columns and all browsers can determine a width of the 1st column in the second row.
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: Is there a way to programmatically specify which tab is selected in the html tabs navigation?
A: You can set "bselectedItem" and " var bselectedSmItem" parameters based on your link before you call your data file.
For example, move " var bselectedItem" and " var bselectedSmItem" parameters from your data file to your code.
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem= var bselectedSmItem= </script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>
You should define seltabs and selsmtabs using server side script.
You can also set it on every page before you call data.js file, for example:
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem=4;
var bselectedSmItem=3;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>