Recent Questions Tree Edit Javascript
Q: What I would like to see is the ability to have a base site navigation menu with all the definitional entries (size, locations, icons, etc.) defined but all the menuitems be called from an Ajax file.
A: You cannot use ajax submenus for the top items.
But you can use several .js file, for example:
params.js //file with all menu parameters (size, locations, icons, etc.)
all code before
var menuItems = [
...
];
dm_init();
data_ajax1.js //data files for ajax submenus
data_ajax2.js
data_ajax3.js
...
main_data.js - data file with the following code:
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
You can also place this code into your html page directly (in the place where you want tohave a menu):
<script type="text/javascript">
var menuItems = [
["Item 1","", "", "", "", "", "0", "0", "data_ajax1.js", "", "", ],
["Item 2","", "", "", "", "", "0", "0", "data_ajax2.js", "", "", ],
["Item 3","", "", "", "", "", "0", "0", "data_ajax3.js", "", "", ],
["Item 4","", "", "", "", "", "0", "0", "data_ajax4.js", "", "", ],
];
dm_init();
Q: Is there a way to have the menu stay expanded in the same exact state when
I click on a menu item of the javascript tree view and go to a new page?
A: There is no need to write additional code on a server side to remember what items were expanded/collapsed.
DHTML Tree Menu can save items state automatically.
Please, see the example of the menu that works with cookies:
http://dhtml-menu.com/tree-examples/tree-menuxp-save-state.html
Set the following parameter:
var tsaveState = 1;
and the menu remembers its structure for each user who visit your page.
Try to expand/collapse items. Then reload the page and you'll see results.
Q: We purchased your software and would like a way to give our users the ability to right click (or equivalent) and open a link in to a new window.
Is there a way to do this? If not, do you have a work around that people have found helpful.
As an example, I have a menu item that goes to http://www.google.com. Typically, it loads this in to one of our frames. However, I would like the end user to have the ability to either load it in to one of our existing frames or to load it in its own window.
A: You can try to write the following code for your items:
["<a href='index.html' target='_blank' class='home'>Home</a>","", "", "", "", "Return to Index page", "", "0", "", ],
And create styles
.home{
color: #FFFFFF;}
.home:hover{
color: #FFBEBE;}
Q: Can you please write me, can I have the active menu button in the javascript menu generator different color display.
A: The menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript"> var pressedItem=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also 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.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page. That is why you should write your own code on PHP.