Recent Questions
Q: Hi, I need to know if it is possible to accomplish the following functionalities with your tree-menu library.
1. I need to have two or more trees in the same page
2. I need to have a checkBox in each node and through a JavaScript function be able to add the selected nodes into another tree.
3. I need to eliminate the nodes that has check=true
4. I need to populate on-demand the tree using AJAX
5. I need to implement drag&drop through the use of the mouse events on the tree nodes
6. How would the tree behave with 10000 nodes??
7. I need to have a tree within another element that uses scroll
such as a DIV or SPAN (fixed area). When collapsed or expanded, the area should remain its original size.
A: 1. You can add any number of the menus on the one page.
2, 3, 5. Yes, you can do it. But you should create your own server-side script (for example, php) that will do it. The menu doesn't support such a feature.
4. Unfortunately, you can't use the AJAX-like technology in the Deluxe Tree such as in Deluxe Menu.
6. It is possible that the loading speed can be lower if the menu is very large. But it doesn't take so much time.
Yes, you can notice some delay in IE, but in over browsers it works better.
Deluxe Tree works fast, but 10000 is a large value. Please, try atrial version of Deluxe Tree.
I tried to create large menus on my machine: P4 3GHz, 512RAM WinXP SP2
It takes:
- 1000 items ~ 10 sec
- 2000 items ~ 40 sec
7. You can paste Deluxe Tree into the <table> or <div>.
Q: I have tested and tested but can't find out how I can add the following, as a link in drop down navigation bar. Can you please help?
http://domain.no/secure/modules/tutorials/cpanel-x3/cpanel-x3-addon.swf" rel="shadowbox;height=450;width=780"
A: You should add <a> tag into the text field in that case:
["<a href="http://domain.no/secure/modules/tutorials/cpanel-x3/cpanel-x3-addon.swf" rel="shadowbox;height=450;width=780">test</a>","",""]
But you should specify a styles for this link also.
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] +'" />';
}