Recent Questions
Q: I have an HTML application with 4 iframes. The main html file contains 3 iframes (top toolbar, left toolbar, and main area) and the menu. The main area iframe contains one additional iframe were the actual data is. When I interact with the data in this last iframe and try to dynamically change the menu in the .html file I get the error message: 'm' is null or not an object
The API call is:
dm_ext_addItem(0, 0, ["test1", "testlink.htm", "", "", "test1m", "_blank", "1"]);
I only have one menu.
I am using IE6
I included these files in both the hta file and the iframe source file.
<script type="text/javascript" src="./data.files/dmenu.js"></script>
<script type="text/javascript" src="./data.files/dmenu_dyn.js"></script>
<script type="text/javascript" src="./data.files/dmenu_key.js"></script>
A: Deluxe Menu doesn't work with <IFrame> objects. It works with<frameset> objects only. All it can to do with <IFrame> is to loadpages into it.
You should use standard installation for the menu (cross-frame mode).
See more info here:
http://deluxe-menu.com/cross-frame-mode-sample.html
http://deluxe-menu.com/data-samples/cross-frame-horizontal-1-sample.htm
There is no need to call dmenu_...js files.
<script type="text/javascript" src="./data.files/dmenu.js"></script>
<script type="text/javascript" src="./data.files/dmenu_dyn.js"></script>
<script type="text/javascript" src="./data.files/dmenu_key.js"></script>
You should write:
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "./data.files/";</script>
<script type="text/javascript" src="./data.files/dmenu.js"></script>
<!-- (c) 2006, http://deluxe-menu.com -->
Q: My question is how can I change the size and color of the font for the
main items in the simple dhtml menu, not the drop downs?
A: You can use Individual Item Styles in that case:
http://deluxe-menu.com/individual-item-styles-info.html
Set the style you need for subitems:
var fontStyle=["normal 11px Trebuchet MS, Tahoma","normal 11px Trebuchet MS, Tahoma"];
Set the style you need for main items:
var itemStyles = [
["fontStyle='bold 12px Arial','bold 12px Arial'"], // style 0
];
Assign this style for main items:
var menuItems = [
["Scenic album","scenic-album.htm", "", "", "", "", "0", "", "", "", "", ], //assign style 0
["|Item 8","", "", "", "", "", "", "", "", "", "", ],
["|Item 9","", "", "", "", "", "", "", "", "", "", ],
> ["|Item 10","", "", "", "", "", "", "", "", "", "", ], ["Floral album","floral-album.htm", "", "", "", "", "0", "", "", "", "", ], //assign style 0
["Southwest album","southwest-album.htm", "", "", "", "", "0", "", "", "", "", ], //assign style 0
["Wildlife album","wildlife-album.htm", "", "", "", "", "0", "", "", "", "", ], //assign style 0
];
Q: Can data be loaded dynamically in the free drop down menu? For example, can you load the child of a node once the node is clicked on.
A: You can use AJAX like technology.
http://deluxe-menu.com/ajax-technology-menu-sample.html
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>
<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: We have a question from one of our clients,
"Is it possible that the open menu items are closed when another menu item with submenu 's is chosen."
A: Yes, it is possible.
You should set the following parameter:
var tcloseExpandedXP=1;