Recent Questions
Q: I'm struggling with one last issue on my navigation. When you have a screen resolution about the same size as the site width, when a sub menu pops up, It displays sometimes to the left of the first drop down menu list rather than the left. Is there a way of changing the way this displays if the screen size is smaller than 800px wide or so.
A: If there is no enough room on the right side of your browser windowdrop down menu list submenus will be shown on the left side.
Q: I am trying to use the Drop Down Menu in a perl script. I would like to know if this is possible?
A: You can use javascript menu in a perl script. Please, see the examplebelow.
------------------ begin program
#!/usr/bin/perl
#!c:\perl\bin\perl
use CGI; # CGI library
use DBI; # Database library
print "Content-Type: text/html\n\n";
use CGI::Carp qw(fatalsToBrowser);
print '<head>
<!-- Deluxe Menu -->
<noscript><a href=http://deluxe-menu.com/>Javascript Menu byDeluxe-Menu.com</a></noscript>
<script type="text/javascript" language="JavaScript1.2"> var dmWorkPath ="menudir/";</script>
<script type="text/javascript" language="JavaScript1.2" src="menudir/dmenu.js"></script>
<!-- (c) 2005, http://deluxe-menu.com --> </head>';
print "<table>";
print '<tr><td><script type="text/javascript" language="JavaScript1.2" src="menudir/data-deluxe-menu.js"></script></td></tr>';
print '<tr><td>second line</td></tr>';
print '</table>';
exit;
_______________________ end program
Q: I want to know how I can set a menu item to pressed
when a page is loaded in javascript drop down menus.
A: You should 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.
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] +'" />';
}