Recent Questions
Q: Compliments on your product, I particularly enjoy the complete set of gui and java, that allows for the quick changes.
After a couple of months of using the trial, I have now purchased it and installed the license.
My question however regards the performance of the menu. Using firebug I note that my deluxe menu .js are the performance bottlenecks, It appears as if they are not being cached and it appears that collecting them is taking longer then the other .js files. What can I do to optimize the load time of the javascript multi level menu and prevent, reloading it from the server with every page reload. The apache has set the expiry correct I believe, as I understand from the header.
A: You can try to use AJAX technology.
AJAX-like technology: data for submenus can be loaded "on-the-fly" from the server.
New parameter:
var tajax = 0/1; - disables/enables AJAX-like support
Current syntax for item parameters ( var tmenuItems):
[text, link, iconNormal, iconOver, iconExpanded, tip, target, itemStyleInd, itemXPStyleInd, jsFileName]
Where jsFileName - .js filename on the server with submenu items ( var tmenuItems).
Q: Thank you. I got the menu working on my web page.
Now, I have to pass dynamic value from the link when the user click the floating javascript menu.
I was using a table type of menu and passing value like this
<td onclick="document.iframename.location.href='abc.jsp?value1=<%value1%>&value2=<%value2%>Click here</td>
What should I do to the deluxe-menu to get the same action?
I need to pass value to next page. The value is dynamic, so I have to use <%value1%> notation for JSP file.
A: Actually you can use your own Javascript code instead standard links. For example:
var menuItems = [
["text", "javascript:your_code_here"]
];
or
var menuitems = [
["<div onClick='your_code_here'>item text</div>", ""]
];
Q: Shouldn’t the dhtml expand menu know what page you are on and expand accordingly?
Or would you need to ‘hard code’ each page to be expanded basedon that page?
A: You should set the following parameter
var ttoggleMode=1;
Deluxe Tree doesn't save a presseditem as it saves a tree state. It works within 1 page only and if youreload the page you should set a pressed item using Javascript API:
function dtreet_ext_setPressedItem (menuInd, itemID)
Please, see here:
http://deluxe-tree.com/functions-info.html
You can also set
var tsaveState = 1;
More info you can find
http://deluxe-tree.com/data-samples/tree-menuxp-save-state.htm
To expand specific items you should use API function
function dtreet_ext_expandItem (itemID, expand)
Try that.
Q: Things are mostly working great. I want my menu to appear centered at the top the page. Here's the code:
<table style="text-align: left; width: 100%;" border="0" cellpadding="2"cellspacing="2">
<tbody>
<tr>
<td style="width: 100%; text-align: center;"><script type="text/javascript" src="navbar.js"></script>
</td>
</tr>
</tbody>
</table>
The table appears at the far left edge of the window. I tried with both absolute (x=20, y=10) and relative (both x and y unset) coordinates. Help!
A: If you want to center the menu paste itwithin the <div > or <table> with a static position and specify a center alignment for it, for example:
<DIV align=center>
<SCRIPT src="data/data.js" type=text/javascript>
</SCRIPT>
</DIV>
<table width=800>
<tr>
<td align=center width=600> </tr>
</table>
Please, set exact value for var menuWidth parameter, for example:
var menuWidth = "600px";
This can help to align your menu correctly in all browsers.
Try also to specify units in "px".
Set also:
var absolutePos = 0;