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 have the menu working perfectly on the main page of the website,but when I try to install menu javascripts onto html files that appear in subfolders of the site, the images do not appear.
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.
Q: Is there a way to specify certian font styles escpecailly a hanging indent on the text of the javascript menu scroll?
A: You should use Individual styles, for example:
var itemStyles = [
["fontStyle=bold 12px Arial,Helvetica", "fontDecoration=none,underline"], // style 0
["fontStyle=normal 12px Arial,Helvetica", "fontDecoration=underline,underline"], // style 1
["fontStyle=normal 14px Arial,Helvetica", "fontDecoration=none,none"], // style 2
];
And assign styles to your items:
var menuItems = [
["1 Item","index.php","","","","_self","0",,,],
["2 Item","","","","","_self","1",,,],
["|Submenu Item","","","","","_self","2",,,],...
Q: We currentlly have a menu that uses standard html hyperlinks to open a new window with _blank as the target. Unfortunately, the size of the window is controlled by the browser and we want to be able to control it. The only way that we know how to do that is to use the window.open client-side function and pass the window's dimensions. Here is a sample of the code that would do that:
window.open("url","_blank","height=1024,width=768,status=yes,toolbar=no,menubar=no,location=no");
How can we add the javascript code to the down menus css instead of a link? Do you have any samples?
A: You can use javascript code within menuItems, for example
["Test Window","javascript:window.open('http://www.microsoft.com','_blank','height=1024,width=768,status=yes,toolbar=no,menubar=no,location=no');", , ,'Monitor Exceptions' , ,'0', '0',,],