Recent Questions
Q: I recently purchased DeluxeMenu for a project I'm working on and a new requirement has been submitted.
I am looking for a way to dynamically affectthe contents of menu javascripts
after it's been rendered(displayed) in the browser.
Can this be accomplished with this component?
A: 1) You can use API functions to affect items dynamically:
http://deluxe-menu.com/functions-info.html
2) Generate your menu items dynamically from database.
Unfortunately we don't have working example with ASP.
You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files, so,
you should move parameters of a menu from a .js file into an html-page, e.g.:
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2008, http://deluxe-menu.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
</script>>
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.htmlQ: I use the apy menu inside a table cell and it has 6 sub menus. The table width is 600 so I would like to have each sub menu with width 100 and each item with the same width. I use menuWidth=100 and itemWidth=100 but it doesn't work, each menu has a different size depending on the label.
Also, each sub menu label can fit in less than 100 but I really want the width to be 100 so it looks consistant across the full menu.
What am I doing wrong ?
A: You should use individual item styles. For example:
var itemStyles = [
["itemWidth=100px"],
];
["DHTML
Menus","", "", "", , , "0", , , , , ],
...
["Apycom
products","", "", "", , , "0", , , , , ],
...
["Contacts","http://www.apycom.com/contact.html", "", "", , , "0", , , , , ],
See the attached example.
Q: We're working on new website and including your html menu systems.
Here's what we're trying to do and it keeps giving us an error (using MS Frontpage for development):
1) We have created a single leftnav menu that will appear on all of the pages of our website.
2) We've created an html page called leftnav.htm that is only this menu. It works just fine when we preview within Frontpage. The leftnav.htm and all the menu .js files are in a unique folder within the site.
3) We then have a template page that is the base template for many of the pages on our website. There is a layout table in this template into which we do an Includepage to bring in the leftnav.htm. When we try to preview this page with the menu included, we get a script error that says "Object expected" on line #155 (the .js file only has 154 lines of code).
We're stuck. Is there a problem with how we're trying to implement the html menu systems?
A: It is possible that you'll have an error in the Frontpage's preview.
Try to open your page in browser. If you'll have the same error,please send send us a copy of your html pages (including .js files) and we will check it.
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.