Recent Questions
Q: Our company has been using the trial version of Deluxe Menu and was satisfied enough with initial integration efforts to acquire the license version.
We are interested in making our main dhtml rollover menu items a constant width, but the data.js parameters ( var menuWidth="800px"; var menuHeight="30px"; var smWidth=""; var smHeight="";) don't seem to give us that capability. We dynamically remove main menu items based on user roles and when we do the main menu always re-sizes and the remaining main menu item widths no longer match our sub-menu widths. We're able to adjust for this by using the API but that seems to be a lot of unnecessary coding. If we could keep each main menu item a fixed width, our sub-menu widths would not have to change.
Do you have information on how to accomplish fixed main menu item widths, even better would be an example?
A: Actually you can specify the width and of all or individual dhtml rollover menu items or submenus usingIndividual Item/Submenu styles.Q: Is there a way to programmatically close a hover popup via javascript?
A: You can close the popup using the following function:document.getElementById('win').hide();
Unfortunately it won't work if you use iframe as window content.
You open another page in the popup (in Iframe) so you cannot access
document.getElementById('win').hide();
element which is situated on the first page.
When you use text or object_id as window content the content of the popup will be situated
on the same page so you can access document.getElementById('win') element and hide it.
There is a workaround for Iframe.
Use text as content type and add the following code inside popup:
<a onclick="document.getElementById('win').hide();">...</a> <iframe></iframe>Q: How change the color of the link in the dhtml vertical menu if the link is already visited.
A: Deluxe Menu has only two states normal and mouseover,
butyou can highlight menu items in two ways:
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"< var pressedItem=3;</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.
You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html
Q: However, when I place it inside a CSS-defined div element (for absolute page placement) the submenu's all drop down a couple hundred pixels.
A: See, the problem is that the script can't get css properties of the object if they are described in separate .css block (or file).In other words, you can't get the value of "POSITION: absolute" attribute of the object if the object doesn't have this property within inline style (style="POSITION:absolute;"). To get the value you should move .css style into style="" attribute.
Please, try to add your
css file -> inline css, for example:
You should add style="POSITION: absolute;"
to the
<div id="menu">
So, you'll have:
<DIV id="menu" style="POSITION: absolute;">
Try that.