Recent Questions Struts Tiles Tree Menu Example
Q: I will build menu for several books’ Contents, each book is more than 100 lines and has links. I think if all the books’ contents in 1 *.JS file then it is TOO LOONG!!.
Can I break it down to 1 book for 1*.JS ? How?
A: You cannot divide your menuItems parameter.
You can only use one .js file for your menu parameters and the other.js file for your menuItems = [...];
But you can do it in two ways.
1) You can try to use several menus on the one page, for example:
param.js // file with menu parameters (all parameters before menuItems = [...];)
menu1.js // menuItems for "AC-DC", "ANLOG"
menu2.js // menuItems for "DIGITAL", "WinXP"
menu3.js // menuItems for "MS-Word", "MS-Excel"
In these menu files you should write
menuItems = [
...
];
dm_init();
Then you should install your menu in the following way
<script type="text/javascript" src="param.js"></script>
<table>
...
<script type="text/javascript" src="menu1.js"></script>
...
<script type="text/javascript" src="menu2.js"></script>
...
<script type="text/javascript" src="menu3.js"></script>
But it will be easier to use vertical menu in such case
var isHorizontal=0;
var smColumns=1;
2) You can also try to add some code, see the attached example.
In the first file (@MY books (Multiple Col.js) I write menuItems for the first item "AC-DC".
Notice that you should delete comma at the end of the last item
var menuItems = [
["AC-DC","", , , , , , , , ],
["|@Book1","testlink.htm", , , , , , , , ],
...
["|@Book3","", , , , , , , , ],
["||CH02","", , , , , , , , ],
["||CH01","", , , , , , , , ] // delete comma at the end of the last item
];
In the second file (@MY books (1.js) you should write
menuItems = menuItems.concat(
[
["ANLOG","", , , , , , , , ],
["|@Book1","", , , , , , , , ],
["|@Book2","", , , , , , , , ],
["|@Book3","", , , , , , , , ] // delete comma at the end of the last item
]
);
In the third file (@MY books (2.js) you should write
menuItems = menuItems.concat(
[
["DIGITAL","", , , , , , , , ],
["|Item 1332","", , , , , , , , ],
["WinXP","", , , , , , , , ],
["|Item 1333","", , , , , , , , ],
["MS-Word","", , , , , , , , ],
["|Item 1334","", , , , , , , , ],
["MS-Excel","", , , , , , , , ],
["|Item 1335","", , , , , , , , ] // delete comma at the end of the last item
]
);
dm_init();
Notice that you should write dm_init(); function in the last file.
In the .html file you should write
...
<tr>
<script type="text/javascript" src="@MY books (Multiple Col.js"></script>
<script type="text/javascript" src="@MY books (1.js"></script>
<script type="text/javascript" src="@MY books (2.js"></script>
</tr>
I hope you understand me.
Q: The idea is that when you click the button of the menu,
the box that holds the menu links opens like normal, but Instead of having the written links inside the drop down box,
I want to have an item like an image or a search box or some other type of independently running script inside the dhtml xml menu.
A: You can use any html code within menuItems of JavaScript Tree Menu:
["+JavaScript Tree Menu: XP Style <a href='http://domain.com'><img src='default.files/xpicon1_s.gif' width=12 height=12></a>","", "default.files/xpicon1_s.gif", "", "", "XP Title Tip", "", "0", "", ],
["|Home <a href='http://domain.com'><img src='default.files/xpicon1_s.gif' width=12 height=12></a>","testlink.htm", "default.files/icon1_s.gif", "default.files/icon1_so.gif", "", "Home Page Tip", "", "", "", ],
["|Product Info <a href='http://domain.com'><img src='default.files/xpicon1_s.gif' width=12 height=12></a>","", "default.files/icon2_s.gif", "default.files/icon2_so.gif", "", "Product Info Tip", "", "", "", ],
Q: I will probably purchase your developer version mostly because I want access to the 600 icons....
1) Do you offer access to these icons with any other license for css drop down menu?
2) I develop sites for several clients, what is involved for them to make small changes to their menus... i.e. add or delete a menu item or sub-item... Will they need to purchase a license to make changes?
3) Does the developer version access your site at runtime? I do not have a problem registering my client sites and getting a key... I just want to make sure at runtime their site does not contact yours.
A: 1) Icon collection is available in Developer licenses only.
2) No, there is no need to purchase the license in that case.
3) No, script doesn't access our site at runtime.
Developer version of the script doesn't check reg. keys at all.
With the Developer license you can use the menu on an unlimited number of Internet or Intranet sites and on the local machines.
This version of the css drop down menu doesn't check keys and it isn't bound to a domain name,so it can be used with an application that doesn't have a fixed domain name.
Q: How to modify data.js in deluxe menu to change the font color if the user click on css pull down menu.
Expl. If the user click on 'Webdesign' and then on 'Thema Webdesign' the color dosn't change to #333. So the user don't now, where is it. Please test it on www.media-design.ch. Thank!
A: Javascript/DHTML 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)
<script type="text/javascript">
var i = <?php echo $selitem; ?>;
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>
You should define selitem using server side script.