Recent Questions
Q: After I successfully click and load the data in to my window using the tab menu, the tab defaults back to the original default tab. Because I have to reload my page after the tab has been selected the tab chosen is lost. What do you recommend for "remembering" the tab so that when the page reloads the correct tab is highlighted.
A: Deluxe Tabs doesn't support API functions which can return theselected tab aslo.
You can set "bselectedItem" and " var bselectedSmItem" parametersbased on your link before you call your data file.
For example, move " var bselectedItem" and " var bselectedSmItem" parametersfrom 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, forexample:
<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>
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: Does this mean that nothing needs to be installed on the server side to make javascript menu?
Here is why I am asking this:
We have a main "corporate" web site, which is going to use the Deluxe Menu. One of the links on the main site will launch a page, which is running on a separate web server (physically separate server, and not a load-balancing scenario). Since all of these pages should look identical to the users, they all have to use the exact same configuration and look&feel in Deluxe Menu. I was wondering if any "configuration" type settings are stored on the server. In other words, would we have to maintain the Deluxe Menu install on two separate servers?
A: There is no need to install anything on your server. You should onlycopy a folder with all engine files (dmenu.js, dmenu_add.js, ...) anddata file on your server. Then you should call these files on yourpages, for example:
<body>
<script type="text/javascript"> var dmWorkPath="menu.files/";</script>
<script type="text/javascript" src="menu.files/dmenu.js"></script>
...
<script type="text/javascript" src="data.js"></script>
> In other words, would we have to
> maintain the Deluxe Menu install on two separate servers?
Actually you can copy deluxe menu files on the one server only anduse absolute paths.
Q: What I would like to see is the ability to have a base site navigation menu with all the definitional entries (size, locations, icons, etc.) defined but all the menuitems be called from an Ajax file.
A: You cannot use ajax submenus for the top items.
But you can use several .js file, for example:
params.js //file with all menu parameters (size, locations, icons, etc.)
all code before
var menuItems = [
...
];
dm_init();
data_ajax1.js //data files for ajax submenus
data_ajax2.js
data_ajax3.js
...
main_data.js - data file with the following code:
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
You can also place this code into your html page directly (in the place where you want tohave a menu):
<script type="text/javascript">
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();