function isNetscape()
{
  var s = navigator.appName.toLowerCase();
  return s.indexOf("netscape") != -1;
}

function getElem(elemName)
{
  var d = isNetscape() ?
    document.getElementsByTagName("*") :
    document.all;
  return d[elemName];
}

function getPosition(elemId,elemIdParent)
{
  getElem(elemId).style.left = relPosX(elemIdParent)-1;
  getElem(elemId).style.top = relPosY(elemIdParent)+17;
}

function showElem(elemId,elemIdParent)
{
  getPosition(elemId,elemIdParent);
  getElem(elemId).style.visibility = "visible";
}

function hideElem(elemId)
{
  getElem(elemId).style.visibility = "hidden";
}

function relPosX(which) {
  var elem = getElem(which);
  var pos = elem.offsetLeft;
  while (elem.offsetParent != null) {
    elem = elem.offsetParent;
    pos += elem.offsetLeft;
    if (elem.tagName == 'BODY') break;
  } return pos;
}

function relPosY(which) {
  var elem = getElem(which);
  var pos = elem.offsetTop;
  while (elem.offsetParent != null) {
    elem = elem.offsetParent;
    pos += elem.offsetTop;
    if (elem.tagName == 'BODY') break;
  } return pos;
}