Recent Questions
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: I want to be able to put a small thumbnail icon in the description area of animated drop down menu. Here is a current line from my .js file for a single link.
["|'Slow Death Hook' Contest<br><br><br>Enter Your Favorite Fish Photos to Win!<br>Gary Parsons ","http://www.domain.com/site/featured_article.cfm?owner=AB18D298-0AC7-254E-B7248E9DCD0F9549 ",,,,,"0"],
I want it to do this though:
["|'Slow Death Hook' Contest<br><br><br>Enter Your Favorite Fish Photos to Win!<br>Gary Parsons ","http://www.domain.com/site/featured_article.cfm?owner=AB18D298-0AC7-254E-B7248E9DCD0F9549 <br><br><img src="images/thumbnail.jpg">",,,,,"0"],
The problem is the "'s around the img src.....it's throwing off your animated drop down menu.
How do I fix that?
A: It is not correct to write menuItems in such way.
You should write:
["|'Slow Death Hook' Contest<br><br><br>Enter Your Favorite Fish Photos to Win!<br> Gary Parsons <br><br><img src='images/thumbnail.jpg'>","http://www.domain.com/site/featured_article.cfm?owner=AB18D298-0AC7-254E-B7248E9DCD0F9549",,,,,"0"],
Try that.
Q: Is there any way through script to call the function that would be called if the user clicked a dhtml tabbed menu?
A: You're able to use Javascript for each item, for example:
var bmenuitems = [
["item text", "javascript:your_code_here"]
];
Unfortunately, you can't assign onmouseover/onClick event to each item.
However, you can achieve this by using standard html objects within items, for example:
var bmenuitems = [
["<div onClick='your_code_here'>item text</div>", "index.html"]
];
Q: I really like how this works and I think it will wind up working for us, but I have a question. On the xp style dynamic tree menu, is there a way when you click one of the 'headers' that will open up other choices for example on your http://www.deluxe-tree.com/data-samples/tree-menuxp3.html tree. When youclick either the deluxe tree:xp style or the samples gallery or the samples gallery2 section, can you make it so it opens a page in another frame? The way it is now you it wont open a page until you click on the 'samples block 1' or below.
A: Actually you cannot use links for the top items in the XP Style.
But theoretically you can use links for the top items. You can write
["<a href='index.html' class='home' target="frame">Home</a>","", "", "", "", "Return to Index page", "", "0", "", ],
["<a href='http://www.domain.uk' class='home' target="frame">About Us</a>","", "", "", "", "", "", "0", "", ],
["|Introduction","http://www.domain.uk/introduction.htm", "", "", "", "", "", "", "", ],