

function findPos(obj) {
    var curleft = curtop = 0;
    if (obj.offsetParent) {
        do {
            curleft += obj.offsetLeft;
            curtop += obj.offsetTop;
        } while (obj = obj.offsetParent);
        return [curleft,curtop];
    }
    return [null,null];
}

function findMousePos(e) {
  var posx = 0;
  var posy = 0;
  if (!e) var e = window.event;
  if (e.pageX || e.pageY)     {
      posx = e.pageX;
      posy = e.pageY;
  }
  else if (e.clientX || e.clientY)    {
      posx = e.clientX + document.body.scrollLeft
          + document.documentElement.scrollLeft;
      posy = e.clientY + document.body.scrollTop
          + document.documentElement.scrollTop;
  }

  return [posx,posy];
}

function getPreviousElementSibling(elem) {
    var node = null;
    var current = elem.prevSibling;
    while ( current != null ) {
        if ( current.nodeType == 1 ) {
            node = current;
            break;
        } 
        current = current.prevSibling;
    }

    return node;
}

function getNextElementSibling(elem) {
    var node = null;
    var current = elem.nextSibling;
    while ( current != null ) {
        if ( current.nodeType == 1 ) {
            node = current;
            break;
        } 
        current = current.nextSibling;
    }

    return node;
}
