Recent Questions
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>
Q: I cannot see the arrow.gif's in my rollover drop down menu.
Here is my code:
var arrowImageMain=["menudir/arrow_main3.gif","menudir/arrow_main3.gif"];
var arrowWidthSub=0;
var arrowHeightSub=0;
var arrowImageSub=["menudir/arrow_sub5.gif","menudir/arrow_sub4.gif"];
Do I need to put the arrow's somewhere else?
A: You should check the following parameter:
var pathPrefix_img="data-samples/images/";
Please check that you have the correct path to your aroows relative to the folder withindex.html file.
For example, you have:
menudir/
menu.js
dmenu.js
arrow_main3.gif
...
index.html
In menu.js file you should write:
var pathPrefix_img="menudir/";
var arrowImageMain=["arrow_main3.gif","arrow_main3.gif"];
var arrowImageSub=["arrow_sub5.gif","arrow_sub4.gif"];
or
var pathPrefix_img="";
var arrowImageMain=["menudir/arrow_main3.gif","menudir/arrow_main3.gif"];
var arrowImageSub=["menudir/arrow_sub5.gif","menudir/arrow_sub4.gif"];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: Can search engines follow the items of navigation menu?
A: You should generate search engine friendly code and install it on your page.
Deluxe Menu is a search engine friendly menu since v1.12.
To create a search engine friendly menu you should add additional html code within your html page:
<div id="dmlinks">
<a href="menu_link1">menu_item_text1</a>
<a href="menu_link2">menu_item_text2</a>
...etc.
</div>
To generate such a code use Deluxe Tuner application.
Run Tuner, load your menu and click Tools/Generate SE-friendly Code (F3).