Recent Questions
Q: How about getting the entire side navigation bar to sit in the centre rather than left align?
A: You can set your menu in the <div> tag and use the alignment you need:
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2009, http://deluxe-menu.com -->
<div align="center">
<script type="text/javascript" src="menudir/data.js"></script>
</div>
Q: It seems that if I try and use the syntax ["| with some HTML such as <DIV class = 'myclass'> inside dropdown menu it IGNORES the HTML and just treats it like another link.
But if I don't start the line with ["| ..... Then I get a syntax error.
For example:
I am trying to place 4 links in a square shape in the top left of my screen. To do this I was going to create DIV's and set the TOP and LEFT to different values from within a loop (I left out the code that does the updating for myleft and mytop...)
var menuItems = [
<loop>
["|<div style='position: absolute; left: <cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>'","", "", "", "", "", "", "", "", "", "",],
["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "", "", "_top", "", "", "", "", "",],
["|</div>","", "", "", "", "", "", "", "", "", "",],
<end loop>
];
What am I doing wrong here?.... Can you show me how to accomplish this task?
A: No, this syntax is incorrect. It won't work.
var menuItems = [
<loop>
["|<div style='position: absolute; left: <cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>'","", "", "", "", "", "", "", "", "", "",],
["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "","", "_top", "", "", "", "", "",],
["|</div>","", "", "", "", "", "", "", "", "", "",],<end loop>
];
You should have <div> ... </div> tags in each dropdown menu item!
It is not correctly to write <div> ... </div> tags for wholesubmenu.
var menuItems = [
["|<div style='position: absolute; left:<cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>text</div>'","", "", "", "", "", "", "", "", "", "",],
["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "","", "_top", "", "", "", "", "",],
["| ","", "", "", "", "", "", "", "", "", "",],
];
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: Is it possible to show a menu item in the simple navigation bar as selected by default to indicate what the current page is?
A: The menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<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" src="menudir/data.js"></script>
You can also set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page.
That is why you should write your own code on PHP.