Recent Questions
Q: Shouldn’t the dhtml expand menu know what page you are on and expand accordingly?
Or would you need to ‘hard code’ each page to be expanded basedon that page?
A: You should set the following parameter
var ttoggleMode=1;
Deluxe Tree doesn't save a presseditem as it saves a tree state. It works within 1 page only and if youreload the page you should set a pressed item using Javascript API:
function dtreet_ext_setPressedItem (menuInd, itemID)
Please, see here:
http://deluxe-tree.com/functions-info.html
You can also set
var tsaveState = 1;
More info you can find
http://deluxe-tree.com/data-samples/tree-menuxp-save-state.htm
To expand specific items you should use API function
function dtreet_ext_expandItem (itemID, expand)
Try that.
Q: Do you by chance have an example of the java popup menu working with XML?
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) 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.)
];
</script>
The example of the menu working with PHP/MYSQL you can find here:http://deluxe-menu.com/rq-loading-bar-MySQL-support.htmlQ: 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 came across your program through a link on the Internet. The menu script displayed was DHTML Menu Demo #23 displayed on
http://dhtml-menu.com/dhtml-samples/menu2752.html - this is the only menu I am interested in as it has the capability of positioning the menu script relative to an existing table in the HTML coding of the page. I already have a vertical scrolling menu with several features visitors. We are moving our website to our own server and are doing some updating to make it more attractive when viewed at different resolutions. If you look at the source coding for the page (yes, it's almost exclusively in HTML - it usually views well on any browser) you will see that ALL the content is enclosed in a table which is centered on the page allowing it to be completely viewed at any resolution of 800 x 600 or greater. But the scripting I'm using ( /* Created by Randy Bennet...) uses the left margin of the browser window as left margin of the page. If it could be written so that the left margin of the existing (and centered in the browser window) table would be the point from which the left corner of the "object1" was measured, then the page would view nicely at any resolution. But I cannot find out how to do this from your "newer version".
A: You can create the same menu using Deluxe Menu:
http://dhtml-menu.com/dhtml-samples/menu2752.html
To install Deluxe Menu in the table cell with center alignment youshould use relative position for the menu:
var absolutePos=0;
var posX="0px";
var posY="0px";
And install it on your page in the following way:
<table>
<tr>
<td align="center">
<script type="text/javascript" src="deluxe-menu.js"></script>
</td>
</tr>
</table>