function elementContains(elmOuter, elmInner)
{
  while (elmInner && elmInner != elmOuter)
  {
    elmInner = elmInner.parentNode;
  }
  if (elmInner == elmOuter)
  {
    return true;
  }
  return false;
}

function getPageXY(elm)
{
  var point = { x: 0, y: 0 };
  while (elm)
  {
    point.x += elm.offsetLeft;
    point.y += elm.offsetTop;
    elm = elm.offsetParent;
  }
  return point;
}

function setPageXY(elm, x, y)
{
  var parentXY = {x: 0, y: 0 };

  if (elm.offsetParent)
  {
    parentXY = getPageXY(elm.offsetParent);
  }

  elm.style.left = (x - parentXY.x) + 'px';
  elm.style.top  = (y - parentXY.y) + 'px';
}

<!--open window with specified url-->
function wopen(url) {
window.open(url,'_blank','toolbar=0,location=1,directories=0,status=1,menubar=0,scrollbars=1,resizable=1,width=640,height=400');
}

   function setPreferredStyles(start,end,max,src,pref){
   		//gecko seems to refer to the stylesheets by a different index from IE?
   		//disable all stylesheets
		if(!document.all){
	   		for(i=0;i<max-1;i++){
				document.styleSheets[i].disabled = true;
			}
		}
		else{
			for(i=0;i<max;i++){
				document.styleSheets[i].disabled = true;
			}
		}
		//enable the preferred sheets
		for(i=start;i<end+1;i++){
			if(!document.all){
   			 	document.styleSheets[i-1].disabled = false;

			}
			else{
				document.styleSheets[i].disabled = false;
			}
		}
		//parent.frames.leftFrame.location=src;
	}
	
	var big = null;
function bigStart(URL) {
    big = window.open(URL, 'TheBig', 'width=350,height=400,resizable=1,scrollbars=yes,menubar=yes');
    if (big != null) {
    if (big.opener == null) {
        big.opener = self;
        }
    big.location.href = URL;
    }
}
