Recent Questions
Q: Do you have an extremely simple example of modifying a menu with the JavaScript API? I've played with the example on the site, but I have trouble removing the other menus without breaking it.
I just want to use the API to change the icon on the menu items.
A: You should use the following function:
function dm_ext_changeItem (menuInd, submenuInd, itemInd, iParams)
<script language="javascript" >
dm_ext_changeItem(0, 0, 1, ["", "", "new_icon.gif", "new_icon_o.gif", "",,""]);
</script>
Q: There is "Incorrect Copyright" message on our website in IE7. Please, help!
A: Now on your website you're using Deluxe Menu v1.14.
You see "Incorrect Copyright" message because you're using old version of Deluxe Menu. We've fixed this bug in the new version - v2.0.
How to upgrade to v2.00
---------------------------------------------------------------
You can download the licensed engine .js files from the same link in your license message.
Deluxe Menu v2.00 has new parameters and features.
To upgrade to v2.00 you should do the following.
Step 1.
1.1 For Windows users
a. Run Deluxe Tuner v2.0
(can be found in the trial menu package v2.0
http://deluxe-menu.com/deluxe-menu.zip).
b. Open menu data file (.js file where menu parameters are placed):
select File/Open…
c. Save the file: select File/Save, then click "No" button when the dialog box appears.
1.2 For other OS users
a. Open menu data file (.js file where menu parameters are placed) in a text editor.
b. Make sure that the following variables exist in the data file:
var keystrokes = 0;
var dm_focus = 1;
var dm_actKey = 113;
var dynamic = 0;
var smHideOnClick = 1;
var itemAlignTop = 'left';
var smSmartScroll = 1;
var dmAJAX = 0;
var dmAJAXCount = 30;
var dmRTL = 0;
var dmObjectsCheck = 0;
var menuBackRepeat = "repeat";
var menuHeight = "";
var transDuration2 = 200;
If one of the variables doesn't exist - add it at the beginning of the file.
c. Save the file.
Step 2. Now open HTML-page that contains Deluxe Menu.
Step 3. Replace existent <noscript></noscript> tags of the menu by the following code:
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
Step 4. Save HTML-page.
Step 5. New engine v2.00 has 7 .js files.
They are:
- dmenu.js
- dmenu4.js
- dmenu_add.js
- dmenu_dyn.js
- dmenu_key.js
- dmenu_cf.js (new v2.00)
- dmenu_popup.js (new v2.00)
Replace all old .js files by the files from v2.00.
Try that.
Q: Thanks, we tried giving var pressedItem=0; and the script as below:
<script type="text/javascript">
onload=setPressed;
function setPressed()
{
dm_ext_setPressedItem (0,8,0,0);
}
</script>
We are facing 2 problems
1) Two menus are getting highlighted, the "Home" and the dynamic html menu which is called onLoad using dm_ext_setPressedItem (0,8,0,0); function)
2) The submenu of the dm_ext_setPressedItem (0,8,0,0) is not getting highlighted.
A: Try to set
var pressedItem=-2;
dm_ext_setPressedItem function has a following parameters:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion, parentOpen)
So, if you want to highlight item in the submenu you should use itemInd of this item (notitemInd of the parent item).
For example you want to highlight submenu item of the 'Manage Users' parent item with
itemInd=15.
You can find more info about dynamic html menu indexes here:
http://deluxe-menu.com/highlighted-items-sample.html#ind
So you should write the function in the following way:
dm_ext_setPressedItem (0, 3, 15, 1, 1)
menuInd = 0 if you have only one menu on the page
submenuInd = 3, see how to determine submenuInd in the table
http://deluxe-menu.com/highlighted-items-sample.html#ind
itemInd = 15, see how to determine itemInd in the table
http://deluxe-menu.com/highlighted-items-sample.html#ind
recursion = 1, to highlight parent items
parentOpen = 1, to open the submenu with the selected item.Q: Buttons are working great! Client would now like to have the rollover image stay active on the page they are on. They would like the button to stay white when you navigate to a particular page, i.e. If you click on "Press", when you get to that page, the button stays white, while all the others react in the normal manner. Is this possible?? I have seen it on other sites and it seems like it should be possible. Please let me know. I believe it could be done by creating a separate menu for each page, but that seems like a lot of work. I am sure you have a solution.
A: The 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.