Recent Questions
Q: We are registered users of the Deluxe Menu software. Today I tried to use the Javascript API, but there is something I do not understand and want to ask for support.
First, I set up a very simple menu:
var menuItems=[
['Menu 1'],
['|Submenu 1'],
['Menu 2'],
['|Submenu 2'],
];
This menu is built via dm_init().
Then, I inspect the menu (in Firebug):
>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]
Ok, there are three submenus. Now I am going to delete one of them:
>>> dm_ext_deleteItem(0, 0, 1)
"Menu 2" disappears on the screen, this works as expected. But now when I re-inspect the menu using the API, I find that the API reports exactly the same as before:
>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]
So, it seems the report function continues to know about the original menu structure and reflects it. Am I using the API in a wrong way?
The problem I want to solve is to remove the entire menu dinamico dhtml, in order to rebuild it dynamically. Because I did not see a function aimed to this functionality, my plan was to delete all main menu entries subsequently until the main menu inspector no longer reports an entry. Is there (a better) way to achieve this?
A: Unfortunately, dm_ext_deleteItem() only change visibility of theseitems.
It doesn't delete them completely.
We'll try to fix it in the next versions of Deluxe Menu.
Q: Now on IE for Windows, the menus disappear as I roll over them, though not always.
I'd say 90% of the time they fade away as my cursor crosses them.
10% they stay and I can get a good click.
On Safari, they work great.
A: See menu parameters they contain:
var smShowPause=0;
var smHidePause=0;
You should set, for example:
var smShowPause=200;
var smHidePause=1000;
Try that.
Q: I have a quick question: I have an iframe menu item (see note 1) for the dhtml menu sample,
and when I click a link in that iframe, I would like to close the menu.
Is this possible, perhaps by using a javascript call?
A: You couldn't close the menu, you can only hide it.
You can try touse the following code to hide the menu.
["||test menuitem
<iframe src='test.php' onClick='document.getElementById(\'dm0m0\').style.visibility=\'hidden\';'
></iframe>","", , , , ,"0" , , , ],
You can also place your Iframe in DIV tag with indents.
["||test menuitem
<div style='padding: 10px;'><iframesrc='test.php'
onClick='document.getElementById(\'dm0m0\').style.visibility=\'hidden\';'></iframe></div>","", , , , ,"0" , , , ],
Q: We currentlly have a menu that uses standard html hyperlinks to open a new window with _blank as the target. Unfortunately, the size of the window is controlled by the browser and we want to be able to control it. The only way that we know how to do that is to use the window.open client-side function and pass the window's dimensions. Here is a sample of the code that would do that:
window.open("url","_blank","height=1024,width=768,status=yes,toolbar=no,menubar=no,location=no");
How can we add the javascript code to the dhtml menu vertical instead of a link? Do you have any samples?
A: You can use javascript code within menuItems, for example
Write:
["Test Window","javascript:window.open('http://www.microsoft.com','_blank','height=1024,width=768,status=yes,toolbar=no,menubar=no,location=no');", , ,'Monitor Exceptions' , , '0', '0',,],