Is the arrow an individual element that you can apply an onclick event to? I would create the menu in html and give it a class of invisible - .invisible {display:none} for example. Then add an onclick event to the arrow to clear this class document.getElementById("mymenu").className = "". Now it will be visible but you want it to appear below the arrow so you need to get the arrows position:-
function findPos(obj) {
var curleft = curtop = 0;
if (obj.offsetParent) {
curleft = obj.offsetLeft;
curtop = obj.offsetTop;
while (obj == obj.offsetParent) {
curleft += obj.offsetLeft;
curtop += obj.offsetTop;
}
}
return [curleft,curtop];
}
The above function is taken from quirksmode and calculates the position of an element so the onclick function for the arrow could be something like this:-
var arrow = document.getElementById("arrow1");
var arrowmenu = document.getElementById("arrow1menu");
var arrowpos = findPos(arrow);
arrowmenu.className = "";
arrowmenu.left = arrowpos[0] + "px";
arrowmenu.top = (arrowpos[1] + 20) + "px";
Something along those lines. You wold also need an onclick function on the document to hide the menu when a user click outside of it.
var arrowmenu = document.getElementById("arrow1menu");
arrowmenu.className = "invisible";
You should be able to build something from there. I highly recommend you take a look at www.quirksmode.org to get a feel for scripting events and elements.