Recent Questions
Q: Hi there, hope someone could help me out.
We have recently purchased your menu product, and I would like to know how I indicate on a javascript slide menu, the root node that was selected. So in other words, if I have a horizontal navigation and I select the 3rd index along the menu and select something from this, how can I make the 3rd index highlighted?
I am not sure how else to phrase this question and hope this makes sense. You help will be appreciated.
A: You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html
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, forexample:
<noscript><a href="http://deluxe-menu.com">Javascript Slide 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: I'm trying out your menus, and I seem to have a problem with changing the title of a menu item. If the text is something like "Create a New Event" the entire menu spreads out and the rollover image starts replicating itself behind it, instead fo stretching with the text. So I see 1 /2 rollover images for that top level item, instead of just the one, width it's width spread out to accomodate the extra text.
I've tried the Styles bit, but that doesn't seem to fix the rollover image any...
Any pointers ?
A: You can try to set the exact width for each menu item using IndividualItem Styles.
You should use Individual Item Styles.
For example:
var itemStyles = [
["itemWidth=120","itemBorderWidth=1","itemBorderStyle=solid,solid"], //style0
["itemWidth=100","itemBorderWidth=1","itemBorderStyle=solid,solid"], //style1
["itemWidth=130","itemBorderWidth=1","itemBorderStyle=solid,solid"], //style2
["itemWidth=150","itemBorderWidth=1","itemBorderStyle=solid,solid"], //style3
];
["Home","testlink.htm"],
["Samples","testlink.htm"],
["|Group 1","", , , , , "0", , , ],
["|Group 2","", , , , , "1", , , ],
["|Group 3","", , , , , "2", , , ],
...
[" More Samples","testlink.htm"],
["|Group 1","", , , , , "3", , , ],
["|Group 2","", , , , , "1", , , ],
Where "0", "1", "2", "3" - style number in itemStyles.
You also should check the width of your rollover image. It should bethe same width as your items.
You can also use
tags in the item text, for example:
var menuItems = [
["line 1
line 2"],
];
Or you can set this parameter:
var noWrap=0;
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: How does the search engine stuff work. A web developer told me to stay away from java script if you want google to recognize your webpage.
Can you comfort me by telling me how it works.
A: Spiders can't read dynamically-generated Javascript code, so theycan't read menu links.
Search engine friendly means that you can add additional html codewithin your html page. You can generate such a code using Deluxe TunerGUI that you can find in the trial menu package. But if you'll use themenu without any additional html code, spider won't see menu links.