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 changed the parameter from
var dmObjectsCheck=0;
to
var dmObjectsCheck=1;
in the data.js file
but it didn't change it;
_____________________
I opened the dmenu_add.js file, but I'm not sure what I'm supposed to do with it?
_____________________
I went to your sample page and I would like to add the item widths into mydata.js file, but each item is a different width. Would it be correct for meto do this?...
var itemStyles = [
["itemWidth=98px"],
];
Or will I have to make all the main menu items/graphics the same width?
A: You don't have to change your dmenu_add.js file.
Please, place this file in the folder where your menu iscreated in.
Yes, you can set itemWidth for each main item.
Please, use Deluxe Tuner to create your individual styles.
You should write, for example, so:
var itemStyles = [
["itemWidth=98px"], // style 0
["itemWidth=100px"], // style 1
["itemWidth=110px"], // style 2
["itemWidth=120px"], // style 3
["itemWidth=95px"], // style 4
];
var menuItems = [
["","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self","0" , , , ],
["","", "data.files/demoCenter.gif", "data.files/demoCenter_mo.gif", , ,"1", , , ],
["","", "data.files/resources.gif", "data.files/resources_mo.gif", , ,"2", , , ],
["","support.htm", "data.files/support.gif", "data.files/support_mo.gif", , "_self","4", , , ],
["","", "data.files/company.gif", "data.files/company_mo.gif", , , , , , ],];
Q: I know I can fix the width of the entire (horizontal) menu. But is there a way to fix the width of each Item in the menu? I would like each Item to be the same width.
A: Please, try to specify units in "px", for example.
var menuWidth = "600px";
It's necessary to specify exact value for Mozilla browsers. It helpsto position menus correctly.
Try to set individual style for item width:
var itemStyles = [
["itemWidth=120px"],
];
var menuItems = [
["Text1","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text2","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text3","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text4","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
["Text5","", "data.files/products.gif", "data.files/products_mo.gif", "Products", "_self", "0", , , ],
...
Q: We are facing some problem, in our css drop menu. Please Advise -
When we used "Helvetica" font in deluxe menu, the css drop menu expand, if the above font not installed in user machine.
I would please request you to kindly assist me on the same as the client is getting impatient.
A: It is normal behaviour if there is no such font on the user machine.
You can try to write fonts in the following way:
"fontStyle='bold 12px HelveticaNeue Condensed, Trebuchet MS','bold 12px HelveticaNeue Condensed, Trebuchet MS'"
var itemStyles = [
["itemBackImage=top.files/,top.files/menuhoverbg.gif","fontStyle='bold 12px HelveticaNeue Condensed, Trebuchet MS','bold 12px HelveticaNeue Condensed, , Trebuchet MS'","fontColor=#FFFFFF,#FFFFFF"],
["itemBackColor=#504B48,#7E7666","fontStyle='bold 12px HelveticaNeue Condensed, Trebuchet MS','bold 12px HelveticaNeue Condensed, Trebuchet MS'","fontColor=#FFFFFF,#ffffff"],
];
Find another font similar to your font and write it through a comma.If there will be no HelveticaNeue Condensed font on the user machinethe font will be Trebuchet MS.
You should choose the second font among the following fonts:
Arial
Tahoma
Times New Roman
Trebuchet MS
Verdana
These fonts are installed on the most of windows computers.