Recent Questions
Q: I have a javascript menu codes that I change dynamically with dm_ext_changeItem.
When I converted it to a popup window, dm_ext_changeItem does not seem to work. Is this a bug?
A: See in the popup menu you should write submenuInd+1:
dm_ext_changeItem (menuInd, submenuInd+1, itemInd, iParams)
Q: Is there a way we can add javascript behaviors to the popup menu in java actions? For example, is there a way we can add an onClick function to a popup menu in java item (eg, onClick="return MyFunction( )" ) so that we can catch and process key events?
I'm really hoping there's a way of doing this...
A: Unfortunately, you can't assign onmouseover/onClick/onContextMenu event to each item. However, you can achieve this by using standard html objects within popup menu in java items, for example:
var menuitems = [
["<div onContextMenu='your_code_here'>item text</div>", ""]
];
You can use your own Javascript code instead standard links. For example:
var menuItems = [
["text", "javascript:your_code_here"]
];
Q: Can I use just one data.js in one folder that all the pages with a dhtml popup menu point to?
A: If you don't want to create your menu on each page you can use aserver-side script
(php, asp, vb, etc.) to generate html pages fromtemplates on your server.
You can use cross frame menu.
It allows you to build full-featured menus on the pagesthat 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.htmlQ: I need to be able to highlight the selected menu item of the sliding drop down menu.
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">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.