Recent Questions
Q: What can I do to optimize the load time for dhtml rollover
and prevent reloading it from the server with every page reload.
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: I am trying to have the selected top item in the pop up menu remain on the mouseover event after it is selected.
It seemed to be working fine when i was just testing with # as a link
but when i actually linked to different pages it returns to normal.
How do i get this to work?
A: You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html
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">Javascript Menu 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 menu 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.
Q: I am using cross frame menu dropdown. I have three frames: Top, Left and main (middle).
I am using the script and data from your sample file; it works fine. Only problem is submenu is offset to the right. It does not show up exactly down below the top menu.
What could be the problem?
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:
--|------------
| menu
--|------------
|
| submenus
|
Now a top row has 2 columns and all browsers can determine a width of the 1st column in the second row.
You should write init function in the following way in that case:
dm_initFrame("mainframe",1,3,0);
Q: Can your menu, when placed in a master page, be propagated throughout an application's sub-folders
or will the html menu need to be added to each page separately?
A: If you don't want to create your menu on each page you can use a
server-side script (php, asp, vb, etc.) to generate html pages from
templates on your server.
However, these scripts don't work inside of Javascript .js files, so,
you should move parameters of a menu from a .js file into an html-page, e.g.:
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2006, http://deluxe-menu.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html
You can use cross frame menu. It allows you to build full-featured menus on the pages
that use frame-based structure. And it's not necessary to insert any code into all the pages -
just specify the additional parameters of the menu and initialize it.
To install the menu in a cross-frame mode, see more info here:
http://www.deluxe-menu.com/cross-frame-mode-sample.html