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: For some reason all of the menu items are squished together when I put the js code in my page.
Is my site's CSS overriding the ones set in the menu css? If so how do I get around this?
A: See, the problem is that the script can't get css properties of the object if they are described in separate .css block (or file).
To get the value you should move .css style into style="" attribute.
Please, try to add your
css file -> inline css
Q: I wonder if you can help me. I've uploaded all my files, including the menus to the client site.
All the menus were working fine, where each link was targeted to the frame "mainFrame" in the middle of the page. This morning, all the css javascript menu link targets don't work anymore. That is, the targeting info has not changed but the linked pages are opening up as a _parent page -- that is, replacing the entire page.
A: You should use absolute paths.
See the url browser tried to open:
http://domain.com/a_bp/bpdoc/3sell/32_sales_order_management/321_sales_order/
7operations/72_monitor_operations/index.html
instead of:
http://domain.com/7operations/72_monitor_operations/index.html
var pathPrefix_link = "http://domain.com/pages/";
These parameter allows to make links paths absolute.
For example:
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
Please, try to use this parameter.
Q: Is it possible to change from a default target setting for all links to _self target for onsite links and _blank target for offsite links?
A: You can set target parameter for each item.
See menuItems parameter:
var menuItems =
[
["Home","testlink.html","icon.gif","iconover.gif","Home Tip",target,"1"],
["|Our Products","testlink.html","icon1.gif","icon2.gif","Our Products Tip","_blank",,"0"],
];