Recent Questions
Q: There is one other issue I am hoping you can help with? When the dhtml web menu drops down in Safari over a SWF -- it disappears. I have added the function dm_ext_ruleObjectHide() code to the top of my data file. Can you please advise what else I can try?
A: Submenu couldn't overlap flash in Safari correctly.
And the following code:
// Safari detect
if ((parseInt(navigator.productSub)>=20020000) &&(navigator.vendor.indexOf('Apple Computer') != -1) &&(navigator.product=='Gecko'))
return true;
in function
function dm_ext_ruleObjectHide()
{
// Safari detect
if ((parseInt(navigator.productSub)>=20020000) &&(navigator.vendor.indexOf('Apple Computer') != -1) &&(navigator.product=='Gecko'))
return true;
else
return false;
}
cause flash to disappear in Safari.
You can try to write this function in the following way:
function dm_ext_ruleObjectHide()
{
return false;
}
Q: I have noticed in some other jdhtml menu system that when the user right clicks a link, they get the internet explorer link options such as Copy Shortcut, Open, and Open in New Tab/Window. This does not seem to work with dmenu.
Is this possible using dmenu?
A: You can try to write the following code for your items:
["<a href='index.html' target='_blank' class='home'>Home</a>","", "", "", "", "", "", "", "", ],
And create styles
.home{
color: #FFFFFF;}
.home:hover{
color: #FFBEBE;}
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: When the html tab menu is initialized can you not have any selected tabs?
I do not want to select any tabs when the menu is initialized for some cases.
A: No, unfortunately it is not possible. Some top item should behighlighted.
But you can try to add separator in the beginning of the menu and set:
var bselectedItem=0;
var bseparatorWidth="0px";
var bmenuItems = [
["-",],
[" Deluxe Menu","content1", "img/icon_ie.gif", "img/icon_ie.gif", "img/icon_ie.gif", "", "", "", "", ],
[" Deluxe Tree","content2", "img/icon_ie.gif", "img/icon_ie.gif", "img/icon_ie.gif", "", "", "", "", ],
[" Deluxe Tabs","content3", "img/icon_ie.gif", "img/icon_ie.gif", "img/icon_ie.gif", "", "", "", "", ],
[" Contact us","content4", "img/icon_mail.gif", "img/icon_mail.gif", "img/icon_mail.gif", "", "", "", "", ],
];