Recent Questions
Q: Sorry to bother you again, but we've done everything suggested in your fix regarding flash obscuring the multiple drop down menu, but we're still having the same problem in Firefox.
We've - set the parameter in the data file to - var dmObjectsCheck=1;
We've added the following to the start of the data file -
function dm_ext_ruleObjectHide()
{
return false;
}
We've embeded the flash as suggested to -
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
height="150" width="732" name="if-header">
<param name="movie" value="images/flash/if-header.swf">
<param name="quality" value="best">
<param name="play" value="true">
<param name="wmode" value="opaque">
<embed height="150" name="if-header"
pluginspage="http://www.macromedia.com/go/getflashplayer"
src="images/flash/if-header.swf"
type="application/x-shockwave-flash" width="732" quality="best"
wmode="opaque" play="true">
</object>
But still our multiple drop down menu sits behind the flash. Are we missing something else?
A: See it is necessary to have opaque parameters in <object> and <embed>tags to display submenus correctly in Firefox.
So, you should open .js file for your flash and find "embed" and"object" words.
And add opaque parameters, for example:
swfNode = '<embed type="application/x-shockwave-flash" wmode="opaque" src="'+ this.getAttribute('swf') +'" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'"';
swfNode += ' id="'+ this.getAttribute('id') +'" name="'+ this.getAttribute('id') +'" ';
var params = this.getParams();
for( var key in params){ swfNode += [key] +'="'+ params[key] +'" '; }
var pairs = this.getVariablePairs().join("&");
if (pairs.length > 0){ swfNode += 'flashvars="'+ pairs +'"'; }
swfNode += '/>';
} else { // PC IE
if (this.getAttribute("doExpressInstall")) {
this.addVariable("MMplayerType", "ActiveX");
this.setAttribute('swf', this.xiSWFPath);
}
swfNode = '<object id="'+ this.getAttribute('id') +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') + '">';
swfNode += '<param name="movie" value="'+ this.getAttribute('swf') +'" /> <param name="wmode" value="opaque"> ';
var params = this.getParams();
for( var key in params) {
swfNode += '<param name="'+ key +'" value="'+ params[key] +'" />';
}
Q: I would like to separate each main js dropdown menu item (Find an Expert, Contact...etc) with a dotted line graphic. If you look at the js dropdown menu, you will see that each graphic is separated by a dotted line. I am trying to replicate that look in the Deluxe Menu. Is there a way I can do that? I tried to use the "separatorImage" value in the DeluxeTuner, but it didn't seem to do anything. Is there a way to put a dotted border just along the bottom of them item, instead of around the whole item (like a box)? Or is there a way to insert the graphic between the items?
A: To add a separator you should
//--- Separators
var separatorImage=""; //for subitems (top items in vertical menu)
var separatorWidth="100%";
var separatorHeight="3px";
var separatorAlignment="right";
var separatorVImage="separator.gif"; //for the top items (subitems items in vertical menu)
var separatorVWidth="100%";
var separatorVHeight="2px";
var separatorPadding="";
You can create separators using menuItems, for example:
var menuItems = [
["item 1"],
["-"], // this item is separator
["item 2"],
];
Q: If is there any way I can give some space between pressed_item and hover item for the rollover menus
A: You can try to specify spacing parameter:
var itemSpacing=1;
You can also try to use separators.
You should add separator between menu items:
["item","#", "", "", "", "", "", "", "", "", "", ],
["-",],
["item","#", "", "", "", "", "", "", "", "", "", ],
Use "Add Separator button in Deluxe Tuner.
Set separator parameters in the following way:
//--- Separators
var separatorImage="";
var separatorWidth="100%";
var separatorHeight="2px";
var separatorAlignment="left";
var separatorVImage="data.files/separator.jpg";
var separatorVWidth="2px";
var separatorVHeight="100%";
var separatorPadding="0px";
Q: I've now begun to offer my clients multiple levels offunctionality. Is there any way to add another level of complexity to the php drop down menu? Would AJAX Menus be the best approach for doing this?
A: You can do it in three ways now.
1) You can use API functions to generate items dynamically:
function dm_ext_createSubmenu (menuInd, submenuInd, itemInd, iParams)
function dm_ext_addItem (menuInd, submenuInd, iParams)
See more info:
http://deluxe-menu.com/functions-info.html
2) Use AJAX feature and create different .js files depend on company and user level.
3) Generate your menu items dynamically from database.
Unfortunately we don't have working example with ASP.
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.)
];
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html