Recent Questions
Q: Is there a way I can do an include of a separate file that would contain the
var menuItems = [];
A: You can delete var menuItems = []; and dm_init(); from your data.jsfile and paste it into your html page or in the other file.
You should call at first data.js file with the parameters and thanmenuItems = []; and dm_init();.
Q: I am having a problem creating a submenu. I did not get any js errors but nothing happens.
What I have found is that even when I have dynamic=1;
I was getting an error saying object expected so I added the dmenu_dyn.js manually (i.e. <scripttype="text/javascript"src="../../Javascript/menu/dmenu_dyn.js"></script>) but now get no errors but no submenu is created.
Do I have to add all the js files in the menu folder manually as I thought it was just
<scripttype="text/javascript"src="../../Javascript/menu/dmenu.js"></script>
that was needed.
All, I am trying to add a submenu under the challenge topmenu.
function addChallengeItems(){
dm_ext_createSubmenu(0, 0, 3, ['Buy Deluxe Menu Now!', "order-deluxe-menu-purchase.html", "", "", "Buy Deluxe Menu Now!", "_blank"]);
}
And then a href that calls addChallengeItems()
<ahref="javascript:addChallengeItems();">add</a>
A: There is no need to add all engine files into your menu folder.
You can add only
dmenu.js
dmenu_dyn.js
More info about Description of Files you can find here:
http://deluxe-menu.com/description-of-files-info.html
Please delete also the following line from your code
<script type="text/javascript"src="../../Javascript/menu/dmenu_dyn.js"></script>
Try that.
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: What i am doing is a horizontal menu with submenus opening down vertically. The main menu and sub menu has a background image. These are rather large for a menu and when the sub menu expands i want it to stay below the main menu and not go upwards to cover the main menu when the browser window is too small.
A: Yes, they will stay forcibly below the main menu.
You can use Smart Scrollable Feature. In that case sub menus won't cover
the main menu items. You can see an example here
http://deluxe-menu.com/scrollable-submenus-sample.html
You may specify the exact height for submenus, for example:
var smHeight="500px";
Use the following parameters to set the direction for submenus:
var subMenuAlign="left";
var subMenuVAlign="top";
For more info see:
http://deluxe-menu.com/ways-showing-submenus-sample.html