Recent Questions
Q: How can I have the option for the navbar tabs that initiated the action highlighted once the new page is reloaded?
I want to highlight the tab which is done with 'bselectedItem', please tell me about thesub-tab option.
A: See you cannot create subitems in:
var tabMode=0;
it is not correct.
You should set
var tabMode=1;
The following parameters set the pressed items for top items andsubitems:
var bselectedItem=0; //top items
var bselectedSmItem=2; //subitems
where 0,1,2... is the index of the item in bmenuItems.
- delete var bselectedItem=1; and var bselectedSmItem=2; parameters from your data file
- set correct parameters on each page before you call data file, forexample:
<noscript><a href="http://deluxe-tabs.com">Javascript Menu by Deluxe-Tabs.com</a></noscript>
<script type="text/javascript" src="menudir/dtabs.js"></script>
<script type="text/javascript"> var bselectedItem=3;
var bselectedSmItem=5; </script>
...
<script type="text/javascript" src="menudir/data.js"></script>
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: How do your users normally indicate which page a web visitor is on, by using your navigation bar submenu?
A: Deluxe Menu has only two states normal and mouseover.
Try to do the following things:
- 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=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page. That is why you should write your own code on PHP.
Q: The menu is the table imbedded to the layer.
If you want to center the menu paste itwithin the <div>> or <table> with a static position and specify a center alignment for it, for example:
<div align=center>
<script src="data.js"></script>
</div>
Please, set exact value for var menuWidth parameter, for example:
var menuWidth = "500px";
This can help to align your menu correctly in all browsers.
Try also to specify units in "px".
Set also:
var absolutePos = 0;
If you want to use absolute position for the menu, use varabsolutePos=1 instead of absolute position for div.