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: I'm trying out the cross-browser (top to bottom) drop down menu and I was wondering if it was possible to have the top bar (the main items) use a background image while the sub-items beneath used a plain background color and no image?
So far I've gotten them to either both use a background image, or both use a background color. Any advice would be greatly appreciated. :)
A: Actually you can create any menu you like with Deluxe Menu.
You can use Individual Styles to set background image for the items
var itemStyles = [
["itemWidth=92px","itemBackImage=deluxe-menu.files/btn_black.gif,deluxe-menu.files/btn_black_blue.gif"],
];
oryou can use images instead of icons (you should delete item's text).
["","", "deluxe-menu.files/btn_black.gif", "deluxe-menu.files/btn_black_green.gif", "", "", "", "", "", ],
Q: How I can make paths for images and links in my DHTML MENU absolute?
A: You can use additional parameters to make menu paths absolute:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
These parameters allow to make images and links paths absolute.
For example:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
var menuItems = [
["text", "index.html", "icon1.gif", "icon2.gif"],
];
So, link path will be look so:
http://domain.com/pages/index.html
Images paths will be look so:
http://domain.com/images/icon1.gif
http://domain.com/images/icon2.gif
Please, try to use these parameters in your DHTML MENU.
Q: First, i like the time I save with this program, but it isn't going to help me that much if I can't put the menu where I want it on my page.
No matter how I set the "positioning", it shows up in exactly the same place over and over. I've put it in table cells, I've given it absolute positioning... none of it matters.
A: 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/data.js" type=text/javascript>
</SCRIPT>
</DIV>
<table width=800>
<tr>
<td align=center width=600><script type="text/javascript" src="data/data.js"></script></td>
</tr>
</table>
Please, set exact value for var menuWidth parameter, for example:
var menuWidth = "600px";
This can help to align your menu correctly in all browsers.
Try also to specify units in "px".
Set also:
var absolutePos = 0;
Try that.