Recent Questions
Q: What I would like to see is the ability to have a base site navigation menu with all the definitional entries (size, locations, icons, etc.) defined but all the menuitems be called from an Ajax file.
A: You cannot use ajax submenus for the top items.
But you can use several .js file, for example:
params.js //file with all menu parameters (size, locations, icons, etc.)
all code before
var menuItems = [
...
];
dm_init();
data_ajax1.js //data files for ajax submenus
data_ajax2.js
data_ajax3.js
...
main_data.js - data file with the following code:
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
You can also place this code into your html page directly (in the place where you want tohave a menu):
<script type="text/javascript">
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
Q: I have read your http://deluxe-tree.com/whats-new-info.html.
And really I do not understand this phrase:
- Item ID format has changed. It depends on the parent ID = [parent ID]i[item index].
Examples: for the first level dtree _0i0, dtree_0i1..., for the second level dtree_0i1i0,dtree_0i1i1, dtree_0i1i2...
Where do I fill in?
Do I have to rename my cascading menu titles?
A: Actually you shouldn't change anything.
This info is for the customers who use these indexes (dtree_0i1i2) only.
Q: After much coming and going I have finally got De Luxe menu to work with Firefox 2
But the menu system on the exact same htm page I have created does not show up in IE7.
Is this a known problem?
A: Try to set the exact width for the menu,
var menuWidth="700px";
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] +'" />';
}