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: When I use API like <script>dm_ext_deleteItem(0, 0, 0);</script> it works fine in my first dhtml drop down menu code (menu.js) but I'm unable to reach second one (menu_gauche.js). I’ve tried this : <script>dm_ext_deleteItem(1, 0, 0);</script> and the page came’s out with a JavaScript error on that line. I’ve read on your side about dm_ext_deleteItem api and the first parameter is for menu Id … If there anything that I have forgot ??
A: You cannot use the following function for the tree menu:
dm_ext_deleteItem(1, 0, 0);
There is no such function there:
You should use
dtreet_ext_deleteItem (0, 0)
for the tree menu, see more info:
http://deluxe-tree.com/functions-info.html
You should set menuInd=0 if you have only one dhtml drop down menu code on your page.
Q: After creating a menu using Deluxe Tuner, the exported menu.htm file, when viewed in IE, creates the “To help protect your security, Internet Explorer has restricted this webpage from running scripts or ActiveX controls that could access your computer. Click here for options…”
What do I do to prevent the menu from causing this error message?
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: I have a problem. How can we get the value of a parameter passed by the menu, when a menu item is clicked? For example I want to get the URL or file name to be open by the menu item when it is clicked.
I am talking about TREE menu.
A: If you want to open url or a file when you click on items of the tree menu you can write, for example:
var tmenuItems = [
["+DHTML Menus","http://dhtml-menu.com", "images/xpicon1.gif", , , "DHTML Menus", , "0", , , , ],
["|Save as...", "javascript:OpenFile('file_name')"]
];