Recent Questions
Q: With the new version, my body onload function is blocked.
In our application we do something with a body onload function.
It doesn't get called if I use the deluxe-menu. If I remove deluxe-menu js files from html, it works.
Is there a way I can use deluxe-menu and get my onload handler called?
A: Deluxe Menu detects any user's onload events and remember them in the case when you write a such events before dm_init(); call.
Try to delete onload event from <body> and write the following at theend of a page (after dm_init() call):
<script type="text/javascript"> onload = onloadHandler;</script>
That should work.
Q: Ever since I installed the menu on our website the homepage loadsslowly.
The menu loads, but then the rest of the page takes about 20 seconds toload. Have you seen this problem before.
It does not happen every time and noton every machine.
A: We've tested your website on the many machines and it loads very quickly, I cannot notice any delays.
Please, try to move the reference to dmenu.js after tag:
<body onload="...">
...
<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "";</script>
<script type="text/javascript" src="dmenu.js"></script>
<!-- (c) 2006, http://deluxe-menu.com -->
</span>
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;
Q: How do I disable the menu link for the page that is currently being displayed? I don’t the menu item removed, I just want the link to be inactive and possibly a different color.
A: To disable items you should set the target parameter to "_".
Unfortunately, Deluxe Menu doesn't have such a feature.
You should write your own code, for example, on PHP.
You can try to use the following function
function disable() {
dm_ext_changeItem(1, 1, 1, ["", "", "", "", "", "_"]);
}
to disable your items.
The example you can find on our site
http://www.deluxe-menu.com/dynamic-functions-sample.html