Recent Questions
Q: Compliments on your product, I particularly enjoy the complete set of gui and java, that allows for the quick changes.
After a couple of months of using the trial, I have now purchased it and installed the license.
My question however regards the performance of the menu. Using firebug I note that my deluxe menu .js are the performance bottlenecks, It appears as if they are not being cached and it appears that collecting them is taking longer then the other .js files. What can I do to optimize the load time of the javascript multi level menu and prevent, reloading it from the server with every page reload. The apache has set the expiry correct I believe, as I understand from the header.
A: You can try to use AJAX technology.
AJAX-like technology: data for submenus can be loaded "on-the-fly" from the server.
New parameter:
var tajax = 0/1; - disables/enables AJAX-like support
Current syntax for item parameters ( var tmenuItems):
[text, link, iconNormal, iconOver, iconExpanded, tip, target, itemStyleInd, itemXPStyleInd, jsFileName]
Where jsFileName - .js filename on the server with submenu items ( var tmenuItems).
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: Working with dhtml tab menu, how do you place content under them?
A: You should paste your content in the <div> .. </div> tags.
<div id="content1" style=" visibility: hidden;" class="tabPage">
<p align=center><img src="img/logo_DM.gif" width=262 height=56 alt="Deluxe-Menu.com"></p>
</div>
<div id="content2" style="visibility: hidden;" class="tabPage">
<p align=center><img src="img/logo_DT.gif" width=262 height=56 alt="Deluxe-Tree.com"></p>
</div>
<div id="content3" style=" visibility: hidden;" class="tabPage">
<p align=center>>img src="img/logo_DTabs.gif" width=254 height=58 alt="Deluxe-Tabs.com"></p>
</div>
Q: Greetings. How do I make a menu item as default selected and open when the page loads with the dhtml menu bar script? Thanks.
A: Deluxe Menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<noscript><a href="http://deluxe-menu.com">dhtml menu bar script by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript"> var pressedItem=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a dhtml menu bar script on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem. You can't get this ID after you reload your page. That is why you should write your own code on PHP.