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: 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: This is probably a really basic question, but I was wondering if
your dhtml menu maker makes it possible to determine the direction of the
drop down menu. In other words, my menu is at the bottom of the page
and I want the drop down list to actually go "up," not down.
Is that possible with your software?
A: Yes it is possible.
You should use the following parameter
var subMenuVAlign="top"; //downward
var subMenuVAlign="bottom"; //upward
var subMenuAlign="left"; //from left to right
var subMenuAlign="right"; //from right to left
Q: Can I add the value of the parameter to the link where I want my application to go when I active a submenu in the menu script?
A: Actually you can add php code inside menu links.
If you define your parameter in .js file you should write yourlinks in the following way, for example:
<?
....
$key = 123456;
....
?>
["Home","www.domain.com/home.php?key=<? echo $key ?>", "", "", "", "", "", "", "", ],
If you define your key parameter in the php file you should move your
menuItems into your php page directly:
<?
....
$key = 123456;
....
?>
<script type="text/javascript">
var tmenuItems = [
['Deluxe Menu','http://deluxe-menu.com','icon.gif',,,,,],
['Deluxe Tree','http://deluxe-tree.com','icon.gif',,'New!',,,],
['Deluxe Tabs','http://deluxe-tabs.com','icon.gif',,'New!',,,],
["Home","www.domain.com/home.php?key=<? echo $key ?>", "", "", "", "", "", "", "", ],
];
dm_init();
</script>