Recent Questions
Q: I want to be able to pull information into dynamic drop down menu from the mysql database.
A: 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.html
Q: The cascading javascript menu does not spans frames or windows like Applets. Is that correct?
I was not able to make the sample to do it.
A: The DHTML Menu and Java Menu are built on different technologies.Java menus can create submenus that cover frames as a standard Windowssubmenus. DHTML Menu can't do that, because it's controls is htmlobjects, they can't overlap Windows controls. So, cascading javascript menu hascross-frame ability that allows it to show submenus in differentframes. But it can support this mode for the same domain only -- ifyou loaded a page to a subframe from another domain, the submenuscan't be shown in it. It happens because all browsers don't allow todo that for security reasons. Just imagine if you'll able to create aframeset from 2 frames, 1st frame will be with a zero height-width,and you'll load your page into it. Then user will go to another domainand your "invisible" frame will change a content of other pages!
See more info about cross-frame mode here:
http://deluxe-menu.com/cross-frame-mode-sample.html
Q: I created a custom error page for a site, but the menu would not display.
I found that this was due to the erroneous "current directory" in the bad link test, for a non-existent directory.
which is: level2/level3/
I changed the script code from:
<script type="text/javascript"> var dmWorkPath = "DMworkfiles/";</script>
<script type="text/javascript" src="DMworkfiles/dmenu.js"></script>
to:
<script type="text/javascript"> var dmWorkPath = "DMworkfiles/";</script>
<script type="text/javascript" src="/DMworkfiles/dmenu.js"></script>
adding the "/" before "DMworkfiles/dmenu.js" source reference allowed the .js file to be found in the root directory and the menu would display.
The problem is that the little menu "expansion" arrow .gif cannot be found in the "current working directory" of level2/level3/. just little "blanks" show.
I tried changing:
var dmWorkPath = "DMworkfiles/";
to:
var dmWorkPath = "/DMworkfiles/";
but that did not enable the display of the arrows.
I also had to prefix all of the links in the menu with a "/" to indicate the root directory because of the "current directory" for the bad page.
I hope I have explained the problem sufficiently.
What am I doing wrong or missing here?
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: I'm loving your product! It has definitely made my life easier.
I do have a question however. I know if I put a "+" in front of the title, the category will be expanded by default.
["+PRODUCTS","", "", "", "", "", "", "", "", ],
Is there a way to do that dynamically? Maybe have some code that would tell the sliding tree menu to expand on that particular page?
A: On your pages you should call the following function/functions to expand/highlight items, for example:
<script>
dtreet_ext_expandItem (dtreet_ext_getItemIDByIndex (0, 0), 1);
dtreet_ext_setPressedItem (0, dtreet_ext_getItemIDByIndex (0, 1));
</script>
See more info about API functions here:
http://www.deluxe-tree.com/functions-info.html