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: I am a web developer and evaluating your product using the Trial Version. I created navigation bar for our website.
It is displaying fine (centered) when using Internet Explorer 7.0. When I access the same website using FireFox Browser, the java drop down menu code aligns on the left.
A: It is not correct to write
align=middle
you should write
align=center
You should set the following menu parameters:
var absolutePos=0;
var posX="0px";
var posY="0px";
Q: The browser I am using is Internet Explorer 7.0 at Windows Vista (with "Security" set at "Medium"). I get the message "To help protect your security, Internet Explorer has restricted this webpage from running scripts or ActiveX controls that could access your computer" and then I have to click this message/bar in order to "Allow blocked content". After I do that the javascript menu script appears as it should, but of course I don't want visitors to go through that. FYI, I do not have the same problem with the dynamic menus on your website or in other websites, which appear normally right from the start.
A: You should adjust your browser settings.
Tools/Internet Options/Advanced Options/
and set
"Allow active content from files to run on My Computer".
There is no way to enable these preferences automatically, in othercase there are no reasons to create security preferences.
Q: Is there a way we can add javascript behaviors to the sliding dhtml menu actions?
For example, is there a way we can add an onClick function to a menu item
(eg,onClick="return MyFunction( )" ) so that we can catch and process key events?
A: Unfortunately, you can't assign onmouseover/onClick/onContextMenu event to each item.
However, you can achieve this by using standard html objects within items, for example:
var menuitems = [
["item text
", ""]
];
You can use your own Javascript code instead standard links. For example:
var menuItems = [
["text", "javascript:your_code_here"]
];
Try that.