Recent Questions
Q: I am using cross frame menu dropdown. I have three frames: Top, Left and main (middle).
I am using the script and data from your sample file; it works fine. Only problem is submenu is offset to the right. It does not show up exactly down below the top menu.
What could be the problem?
A: Deluxe Menu doesn't work correctly (incorrect submenu position) if youhave complex frame structure.
The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, so submenus drop down with an offset.
You should create, for example, the following frameset structure:
--|------------
| menu
--|------------
|
| submenus
|
Now a top row has 2 columns and all browsers can determine a width of the 1st column in the second row.
You should write init function in the following way in that case:
dm_initFrame("mainframe",1,3,0);
Q: Hello. We need some tech support regarding our deluxe menu.
All of our pages that have the menu code on them are suddenly giving status bar errors that say: "Done, but with errors on page"
When pulling up the error details, the dialog says:
Line: 2
Char: 1
Error: Syntax error
Code: 0
On pages that do not have the menu at all, we're not getting the error.
A: Now you have such code:
<SCRIPT LANGUAGE="" type="text/javascript">
<!--
var dmWorkPath = "menu/";
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</SCRIPT>
So, your menu cannot find var dmWorkPath = "menu/"; parameter on yourpage.
Try to write your code in the following way:
<SCRIPT type="text/javascript"> var dmWorkPath = "menu/";</script>
<SCRIPT LANGUAGE="" type="text/javascript" src="menu/dmenu.js"></SCRIPT>
<!-- (c) 2006, http://deluxe-menu.com -->
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 am trying to use Delux-menu for our project, I am not able to use dynamic features of drop down menu script. I will send the html file, where I am calling the java script.
I am getting the error dm_menu[mInd] has no properties.
A: You have one menu in your example, but you write:
function hide(vis) {
dm_ext_changeItemVisibility(1, 0, 2, vis);
That is mean that you want to hide item in the second drop down menu script.
You should write:
function hide(vis) {
dm_ext_changeItemVisibility(0, 0, 2, vis);