Recent Questions
Q: I'm trying to evaluate the possiblity of using your menu in our product. Can we specify our own onclick event handler for the menu item?
A: You're able to use Javascript for each item, for example:
var menuitems = [
["item text", "javascript:your_code_here"]
];
Unfortunately, you can't assign onmouseover/onClick event to each item.
However, you can achieve this by using standard html objects within items, for example:
var menuitems = [
["<div onClick='your_code_here'>item text</div>", "index.html"]
];
Q: Do you have any working examples of a menu generated using .php from a MySQL database?
Our website is dynamic from a MySQL db and we already have categories and sub-categories. It would be useful if we could use this with our deluxe menu.
I don't know how to set this up, so any assistance would be appreciated.
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) 2006, 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: Hi, I am looking at your Deluxe Menu package. It looks very nice, but I cannot find any kind of manual for how to use it. There's some online documentation on the Tuner, but (for example) I can't find anything that documents the dm_popup window open options. I find some sample code I can copy that has the call
return dm_popup(0, 1000, event)
1. So, what do these parameters mean?
2. It takes a long time for the menu to go away if you don't click anything. From tracing through the obfuscated javascript with firebug, it looks like the second parameter sets a timeout to make the menu go away. But when I change the "1000" to "1", the menu does not appear to behave any differently.
3. If I want to have more than one of these menus show up on the page, how would I do that?
4. I have it set up to show the popup when you right-click a page element. However, the menu items only appear to fire if you then left-click them. This is confusing to the user: I'd like to have the menu items also fire when you right-click them for consistency. How would I configure this?
These are the kinds of questions I would like to have answers to, but I cannot find any relevant documentation. Do I have lots of tracing through javascript ahead of me? If I have just missed the relevant documentation, please tell me where to find it. I would love to use your product, but if I have to spend all my time tracing javascript it's not a big win for me. Thanks for your assistance.
A: 1) You can find window open options info on our website:
http://deluxe-menu.com/popup-mode-sample.html
Click "Show additional info" button on this page.
2) You should adjust the second parameter in dm_popup() function:dm_popup(0, 500, event);
3) See the first parameter in the dm_popup() function is menuInd, soif you want to create several popup menus you should create severaldata file and call them on your page, for example:
<script type="text/javascript" language="JavaScript1.2" src="menu-top.js"></script> // ID - 0 //standard menu (doesn't use popup feature)
<script type="text/javascript" language="JavaScript1.2" src="source_pop.js"></script> // ID - 1
<script type="text/javascript" language="JavaScript1.2" src="source_pop1.js"></script> // ID - 2
<script type="text/javascript" language="JavaScript1.2" src="source_pop2.js"></script> // ID - 3
<script type="text/javascript" language="JavaScript1.2" src="source_pop3.js"></script> // ID - 4
and so on.
See how you should call dm_popup() functions:
<img src="../../../../fileadmin/img/flag_de.gif" width="50"
onMouseOver="return dm_popup(1, 2000, event);" style="cursor: pointer;">
// 1 - is ID of the second menu
....
<img src="../../../../fileadmin/img/flag_fr.gif" width="50"
onMouseOver="return dm_popup(2, 2000, event);" style="cursor: pointer;">
// 2 - is ID of the third menu
// 3 - is ID of the fourth menu
... and so on.
4) Unfortunately it is not possible now.
Unfortunately we don't have additional documentation yet. But you canfind all need info on our website. Try to use search field on ourwebsite.
> I have another question. My popup menus are not fixed, they are dynamic in
> the sense that I have multiple rows showing up on the page and each row
> needs to have custom information passed. Each row has one or more database
> identifiers associated with it, and the ajax calls that will get fired
> when I choose a menu item such as "Edit" or "Add Child" will need those
> database identifiers. How would I pass this information?
You can dynamically generate the menu structure. For example movemenuItems into your phph page (or embed in a Smarty Template) insideSCRIPT tag:
<script type="text/javascript">
var menuItems = [
["Terminal","index.php?form=TERMINAL&tid={$tid}"],
["Kassenschnitte","index.php?form=KS&tid={$tid}"],
["Buchungen Debit","index.php?form=DEBIT&tid={$tid}"],
["Kredit- / Bonuskarten","index.php?form=KREDIT&tid={$tid}"],
["Rucklastschriften","index.php?form=RLAST&tid={$tid}"],
["Monatsstatistik","index.php?form=STATISTIK&tid={$tid}"],
["RL-H.Rechnung","index.php?form=RLASTABR&tid={$tid}"],
["LiveStream","index.php?form=LIVESTREAM&tid={$tid}"],
["Reports","index.php?form=REPORTS&tid={$tid}"],
["Datenhistorie","index.php?form=HISTORY&tid={$tid}"],
["Bankleitzahlen","index.php?form=BLZ&tid={$tid}"],
["<br />Ihre Nutzerdaten","index.php?form=NDATEN&tid={$tid}"],
["<br />{$NAVI}",""],
];
dm_init();
</script>Q: Can I use javascript to get the object (getElementByID). If not howdo I hide my dropdown menu on print?
A: You can add a new button to print your page and call onClick event, soyou should write:
<body ....
onClick="document.getElementById('dm0m0').style.visibility='hidden'; window.print();">
...
</body>
Or you can use the same javascript code from your menu item.
For example:
var menuItems = [
["Print", "javascript:document.getElementById('dm0m0').style.visibility='hidden';
window.print();", icon1, icon2],
];
But if you want to hide the menu when your customers push "File/Print"you should write so:
You must create two functions, for example:
function myprint()
{ document.getElementById('dm0m0').style.visibility='hidden';
window.print();
}
function myprint2()
{ document.getElementById('dm0m0').style.visibility='visible';
window.print();
}
You should add this functions into your code.
And then you must write so:
window.onbeforeprint = myprint;
window.onafterprint = myprint2;