Recent Questions
Q: Couple last questions. I have 25 icons (images) on one page. Each image needs it's own popup menu. Obviously I now have the first one working. How and where do I define IDs number 2-24 ? Does each icon need it's own "source_" file?
Also, where is it defined that the popup menu is ID 1 ?
A: > Also, where is it defined that the popup menu is ID 1 ?
Each menu has ID. The ID's number starts with 0.
So, when you have several data files on your page you have such ID's:
<script type="text/javascript" language="JavaScript1.2" src="menu-top.js"></script> // ID - 0
<script type="text/javascript" language="JavaScript1.2" src="source_pop.js"></script> // ID - 1
<script type="text/javascript" language="JavaScript1.2" src="source_pop1.js"></script> // ID - 2
<script type="text/javascript" language="JavaScript1.2" src="source_pop2.js"></script> // ID - 3
<script type="text/javascript" language="JavaScript1.2" src="source_pop3.js"></script> // ID - 4
and so on.
> I have 25 icons (images) on one page. Each image needs it's own popup menu.
If you want to have different Popup menus (there color, item, text,font and so on) you should create 25 different .js files with yourparameters. And call them from your page, for example:
<SCRIPT language=JavaScript1.2 src="source_pop.js" type=text/javascript></SCRIPT>
<SCRIPT language=JavaScript1.2 src="source_pop1.js" type=text/javascript></SCRIPT>
<SCRIPT language=JavaScript1.2 src="source_pop2.js" type=text/javascript></SCRIPT>
...
<SCRIPT language=JavaScript1.2 src="source_pop24.js" type=text/javascript></SCRIPT>
If you have different item text only you can use one
<SCRIPT language=JavaScript1.2 src="source_pop.js" type=text/javascript></SCRIPT>
file. But you should delete the following code:
var menuItems = [
["Next","testlink.htm"],
["Prev","testlink.htm"],
["Close","testlink.htm"],
];
dm_init();
and move it to the html page:
<body>
...
<SCRIPT language=JavaScript1.2 src="source_pop.js" type=text/javascript></SCRIPT>
<script type="text/javascript"> //first popup menu ID - 1
var menuItems = [
["Next","testlink.htm"],
["Prev","testlink.htm"],
["Close","testlink.htm"],
];
dm_init();
</SCRIPT>
<script type="text/javascript"> //second popup menu ID - 2
var menuItems = [
["Text","testlink.htm"],
["Text1","testlink.htm"],
["Text2","testlink.htm"],
];
dm_init();
</SCRIPT>
<script type="text/javascript"> //third popup menu ID - 3
var menuItems = [
["New_Text","testlink.htm"],
["New_Text1","testlink.htm"],
["New_Text2","testlink.htm"],
];
dm_init();
</SCRIPT>
...
<script type="text/javascript"> //twenty fourth popup menu ID - 3
var menuItems = [
["New","testlink.htm"],
["New","testlink.htm"],
["New","testlink.htm"],
];
dm_init();
</SCRIPT>
<img src="testimage.gif" width=200 onClick="return dm_popup(1, 1000, event);" style="cursor: hand;">
<img src="testimage.gif" width=200 onClick="return dm_popup(2, 1000, event);" style="cursor: hand;">
<img src="testimage.gif" width=200 onClick="return dm_popup(3, 1000, event);" style="cursor: hand;">
...
<img src="testimage.gif" width=200 onClick="return dm_popup(24, 1000, event);" style="cursor: hand;">
...
</body>
Q: I cannot see my menu on the pages. Could ypu help me?
A: Try to move the following code in the <head> tag
<script type="text/javascript"> var dmWorkPath = "";</script>
<script type="text/javascript" src="dmenu.js"></script>
Notice: your menu won't work correctly if you write src="/dmenu.js"
Q: Is there any way to call a javascript function on mouseover from a menu item?
A: You can use your own javascript functions in the menu items.
You should paste "javascript:some_function()" into item's link field, for example:
var menuItems = [
["text", "javascript:your_function(...)", ...]
];
var menuItems = [
["item text", "javascript:alert('Hello World')", , , , ,]
];
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 menuitems = [
["<div onMouseover='your_code_here'>item text</div>", "index.html"]
];
Q: Can I use javascript to get the object (getElementByID). If not howdo I hide my dropdown menu on print?
A: You can add a new button to print your page and call onClick event, soyou should write:
<body ....
onClick="document.getElementById('dm0m0').style.visibility='hidden'; window.print();">
...
</body>
Or you can use the same javascript code from your menu item.
For example:
var menuItems = [
["Print", "javascript:document.getElementById('dm0m0').style.visibility='hidden';
window.print();", icon1, icon2],
];
But if you want to hide the menu when your customers push "File/Print"you should write so:
You must create two functions, for example:
function myprint()
{ document.getElementById('dm0m0').style.visibility='hidden';
window.print();
}
function myprint2()
{ document.getElementById('dm0m0').style.visibility='visible';
window.print();
}
You should add this functions into your code.
And then you must write so:
window.onbeforeprint = myprint;
window.onafterprint = myprint2;