Recent Questions
Q: We were wondering is there any api for the css menu tabs available?
We would need to programatically open a particular tab.
A: No, unfortunately Deluxe Tabs doesn't support API functions now.
You can use the following function to open specific tab:
dtabs_itemClick(menuInd,itemInd);
where
menuInd - index of a tab menu on a page, >= 0.
itemInd - index of a item, >=0.
For example:
<DIV onClick="dtabs_itemClick(0,2)" style="width: 200px; border: 2px solid #000;">
Click to open the third tab<
/DIV>
Q: Can we set the link of a java menu item to a javascript method?
A: You can use your own javascript functions in the menu items.
You should paste "javascript:some_function()" into item's link field, for example:
var menuItems = [
["text", "javascript:your_function(...)", ...]
];
var menuItems = [
["item text", "javascript:alert('Hello World')", , , , ,]
];
Q: How does one go about changing the parameter or the JavaScript so that a vertical menu selection stays 'on'? In other words, the vertical menu remains selected, perhaps in a background color that shows the user this menu choice is selected and the user is in the selected menu area.
A: To save your navigation path you should set the following parameter:
var saveNavigationPath = 1;
The menu keeps items highlighted during menu navigation.
0 - disabled, 1 - enabled (default).
You can highlight menu items by default in two ways:
1) Set the pressed item on each page idividually using the following parameter:
var pressedItem = -2;
The toggle mode. Sets an index of an item that will be highlighted by default.
-2 - the toggle mode is disabled;
-1 - the toggle mode is enabled, but no items highlighted by default;
0,1,2,3,... - index of highlighted item in a top-level menu.
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, for example:
<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=2;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
2) Set the pressed item/subitem using dm_ext_setPressedItem () function.
Please see more info here:
http://deluxe-menu.com/highlighted-items-sample.html
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.