Recent Questions
Q: Is it possible, for instance, to call dm_init multiple times in the list menu java? If so, do you have an example?
A: Yes, you can call dm_init(); function multiple times (for example youcan call several data files, or move menuItems array and dm_init();function into your page directly) to have multiple menus on your page.
Q: Everything will go fine during setup, until I get further into it, I will get an error. It says error on a line of text that isnt even there. The line of text does not exists. Please let me know how I can correct this issue and get the program running right.
A: See, it is not correct to write " symbols within menuItems:
["||A23 (3" DIAM)","http://www.interlight.biz/products.int?Category=INCANDESCENT&Subcat=A+SHAPE&Dept=A23+%283%22+DIAM%29",
Try to write your last items in the following way:
["||A15 (2" DIAM)","http://www.interlight.biz/products.int?Category=INCANDESCENT&Subcat=A+SHAPE&Dept=A15+%282%22+DIAM%29", "", "", "", "", "", "", "", "", "", ],
["||A19 (2.5" DIAM)","http://www.interlight.biz/products.int?Category=INCANDESCENT&Subcat=A+SHAPE&Dept=A19+%282%2E5%22+DIAMETER%29", "", "", "", "", "", "", "", "", "", ],
["||A21 (2.6" DIAM)","http://www.interlight.biz/products.int?Category=INCANDESCENT&Subcat=A+SHAPE&Dept=A21+%282%2E6%22+DIAM%29", "", "", "", "", "", "", "", "", "", ],
["||A23 (3" DIAM)","http://www.interlight.biz/products.int?Category=INCANDESCENT&Subcat=A+SHAPE&Dept=A23+%283%22+DIAM%29", "", "", "", "", "", "", "", "", "", ],
Q: I'm trying created an independent menu from my html pages.
I have several pages stored in directories and subdirectories,
I would like to call theses pages from a single dhtml menu script.
A: You can use additional parameters to make menu paths absolute:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
These parameters allow to make images and links paths absolute.
For example:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
var menuItems = [
["text", "index.html", "icon1.gif", "icon2.gif"],
];
So, link path will be look so:
http://domain.com/pages/index.html
Images paths will be look so:
http://domain.com/images/icon1.gif
http://domain.com/images/icon2.gif
Please, try to use these parameters.
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.