function handleError (err, url, line) {
    if (err.indexOf('bject') != -1) {
      //alert('Oops, something is not defined.\n' + err + '\n' + url + '\nline no: ' + line);
      return true; // error is handled
    }
    else
      return false; // let the browser handle the error
  }
  window.onerror = handleError;
<!--
//Object detection
var isIE45= document.all;
var isNav6= 0;
var isNav4= document.layers;

// Format Menu

//cell background
	hovercolor   = "#d9e6e6";	// color name/code for cells on hover
	bgcolor      = "#ffffff";	// color name/code for the cells background
	background   = "";			// picture url in place of bgcolor
//font color
	fncolor      = "#326601"; 	// font color
	hfncolor     = "#000000";   // font color on hover    
//main table border	
	mborder  = 0;				// size of border around drop menus
	mborder_color = "#ffffff";  //color of border around drop menus 
//cell tables
	cell_border = 1;        	//size of border around cells
	border_color = "#999999";  	//color of border around cells
//misc	
	numMainItems = 7; 			//number of items in main menu
    

	
// End Format Menu

var cellWidth=200;
var cellHeight=5;
var cellPadding=3;
var textBefore = "";
var hasFlyOut = "";

if (document.getElementById && !isIE45){ 
	isNav6=true; 
}



//Menu 
No3 = (parseInt(navigator.appVersion) > 3) ? 1:0;
layer = (isIE45 && No3) ? "document.all['L'+menu].style" : (isNav4 && No3) ? "document.layers['L'+menu]" :(isNav6 && No3) ? "document.getElementById('L'+menu).style" : 0;
var timer;



// -->
if(isIE45 || isNav6){ 
	if(!background) { 
		background=bgcolor; 
	} else { 
		background = "url("+background+")"; 
	} 
}

//Get the img X and Y positions with an onMouseOver event
var d = document;
function getCoor(imgId) {
	var x = (d.layers)?d[imgId].x:d[imgId].offsetLeft;
	var y = (d.layers)?d[imgId].y:d[imgId].offsetTop;
	alert("x = " + x + "\ny = " + y);
}
function getDim(el){
	for (var lx=0,ly=0;el!=null;
		lx+=el.offsetLeft,ly+=el.offsetTop,el=el.offsetParent);
	return {x:lx,y:ly}
}


var x1 = getDim(document.getElementById("MySpan1")).x+-140;

var x2 = getDim(document.getElementById("MySpan2")).x+-140;

var x3 = getDim(document.getElementById("MySpan3")).x+-140;

var x4 = getDim(document.getElementById("MySpan4")).x+-140;

var x5 = getDim(document.getElementById("MySpan5")).x+-140;

var x6 = getDim(document.getElementById("MySpan6")).x+-140;

var x7 = getDim(document.getElementById("MySpan7")).x+-140;

var x8 = getDim(document.getElementById("MySpan8")).x+-140;

var y1 = getDim(document.getElementById("MySpan1")).y+5;

var y2 = getDim(document.getElementById("MySpan2")).y+5;

var y3 = getDim(document.getElementById("MySpan3")).y+5;

var y4 = getDim(document.getElementById("MySpan4")).y+5;

var y5 = getDim(document.getElementById("MySpan5")).y+5;

var y6 = getDim(document.getElementById("MySpan6")).y+5;

var y7 = getDim(document.getElementById("MySpan7")).y+5;

var y8 = getDim(document.getElementById("MySpan8")).y+5;

var xcoord = new Array(x1,x2,x3,x4,x5,x6,x7,x8);
var ycoord = new Array(y1,y2,y3,y4,y5,y6,y7,y8);

var leftStart=140;
var id = 1;

function LayerSpecs(Left,Top,Width) { 
	if(No3) {
		this.left  = Left;
		this.top   = Top;
		this.info  = "";
		var t = Top;
		if (isNav6){ 
			this.info +=  "<TABLE width='"+cellWidth+"' style='z-index:1;' border='"+mborder+"' BORDERCOLOR='"+mborder_color+"' cellpadding=0 cellspacing=0><TR><TD>"
	   		this.info +=  "<TABLE width='"+cellWidth+"' style='z-index:1;' BORDER='"+cell_border+"' BORDERCOLOR='"+border_color+"' cellpadding='"+cellPadding+"' cellspacing=0>"
	 	}else{
		   	this.info +=  "<TABLE width='"+cellWidth+"' style='z-index:1;border: solid "+mborder+"px "+mborder_color+";' cellpadding=0 cellspacing=0><TR><TD>";
       	  	this.info +=  "<TABLE width='"+cellWidth+"' style='z-index:1;border-bottom: solid "+cell_border+"px "+border_color+";' cellpadding='"+cellPadding+"' cellspacing=0>"
    	 	}  
       
		for(i=3; i<arguments.length; i++) {
			if(isIE45) { 
				this.info += "<TR><TD width='"+cellWidth+"' style='z-index:1;border: solid "+cell_border+"px "+border_color+";border-bottom:none;' BGCOLOR='"+bgcolor+"' xBACKGROUND=\""+background+"\" ONMOUSEOVER='this.bgColor=\""+hovercolor+"\";' ONMOUSEOUT='this.bgColor=\""+bgcolor+"\";'><A class='mnav' ONMOUSEOUT='this.style.color=\""+fncolor+"\";' HREF="+arguments[i++]+"this.style.color=\""+hfncolor+"\";'>"+arguments[i]+"</A></TD></TR>";
			}else if (isNav6) { 
				this.info += "<TR><TD width='"+cellWidth+"' BGCOLOR='"+bgcolor+"' xBACKGROUND=\""+background+"\" ONMOUSEOVER='this.bgColor=\""+hovercolor+"\";' ONMOUSEOUT='this.bgColor=\""+bgcolor+"\";'><A class='mnav' ONMOUSEOUT='this.style.color=\""+fncolor+"\";' HREF="+arguments[i++]+"this.style.color=\""+hfncolor+"\";'>"+arguments[i]+"</A></TD></TR>";
			}else { 
				this.info += "<TR><TD><ILAYER><LAYER ONMOUSEOVER='this.bgColor=\""+hovercolor+"\"' ONMOUSEOUT='this.bgColor=\""+bgcolor+"\"' WIDTH="+Width+"><A class=\"mnav\" ONMOUSEOVER='this.style.color=\""+hfncolor+"\";' ONMOUSEOUT='this.style.color=\""+fncolor+"\";' HREF="+arguments[i++]+arguments[i]+"</A></LAYER></ILAYER></TD></TR>"; 
			}
			t = t + 20;
		}
	
		this.info += "</TABLE>" 
		this.info += "</td></tr></TABLE>"  
		id += 1;
	} 
}


Layer = new Array();

//////////////////////////////////////////////
/*	Create Your layers below by typing:
	 Layer[incrementing number] = new LayerSpecs(Left Position, Top Position, Width, 
	 				      '"Link URL" onMouseOver="Show(#,#,#)">',
	 				      'Link Name');
   	The order of parameters for the show function as follows: 													 
	Show(	Layer Number to Open, 
		Current Layer, 
		Any Layers Opened before the current layer) 			
													 
	Keep in mind punctuation is very important!!	 													
*/


Layer[1] = new LayerSpecs(leftStart+xcoord[0],ycoord[0],200);

Layer[2] = new LayerSpecs(leftStart+xcoord[1],ycoord[1],200,'"/soc/pages/grad.html" onMouseOver=\'Show(2);',textBefore+'Program Information','"/soc/pages/faqs.html" onMouseOver=\'Show(2);',textBefore+'Graduate Admission FAQs','"/soc/gs/gradstudents.html" onMouseOver=\'Show(2);',textBefore+'Graduate Students','"/soc/gs/gradstudentplace.html" onMouseOver=\'Show(2);',textBefore+'Ph.D.s on the Move');

Layer[3] = new LayerSpecs(leftStart+xcoord[2],ycoord[2],200,'"/soc/pages/undergrad.html" onMouseOver=\'Show(3);',textBefore+'Program Information','"/soc/pages/studysoc.html" onMouseOver=\'Show(3);',textBefore+'Sociology Concentration','"/soc/pages/secondary.html" onMouseOver=\'Show(3);',textBefore+'Secondary Field','"/soc/pages/senior_thesis.html" onMouseOver=\'Show(3);',textBefore+'Writing a Senior Thesis','"/soc/pages/undergrad_news.html" onMouseOver=\'Show(3);',textBefore+'Undergraduate News','"/soc/pages/alumni.html" onMouseOver=\'Show(3);',textBefore+'Alumni Profiles');

Layer[4] = new LayerSpecs(leftStart+xcoord[3],ycoord[3],200,'"/soc/pages/faculty.html" onMouseOver=\'Show(4);',textBefore+'Faculty','"/soc/gs/gradstudents.html" onMouseOver=\'Show(4);',textBefore+'Graduate Students','"/soc/pages/staff.html" onMouseOver=\'Show(4);',textBefore+'Staff','"/soc/gs/visitors.html" onMouseOver=\'Show(4);',textBefore+'Visiting Scholars');

Layer[5] = new LayerSpecs(leftStart+xcoord[4],ycoord[4],200,'"/soc/pages/newsevents.html" onMouseOver=\'Show(5);',textBefore+'News','"/soc/Weekly_Calendar/This_Week_In_Sociology.html"  onMouseOver=\'Show(5);',textBefore+'This Week','"/soc/pages/newsevents.html#cws" onMouseOver=\'Show(5);',textBefore+'Workshops/Seminars', '"/soc/pages/newsevents.html#res" onMouseOver=\'Show(5);',textBefore+'Research Centers & Programs','"/soc/pages/recentpubs.html" onMouseOver=\'Show(5);',textBefore+'Recent Publications'); 

Layer[6] = new LayerSpecs(leftStart+xcoord[5],ycoord[5],200,'"/soc/pages/doclib.html" onMouseOver=\'Show(6);',textBefore+'Document Library','"/soc/technology/deptresources.html" onMouseOver=\'Show(6);',textBefore+'Computing Resources', '"/soc/technology/datatools.html" onMouseOver=\'Show(6);',textBefore+'Data Tools',																																																																																																																																														'"/soc/technology/faq_home.html" onMouseOver=\'Show(6);',textBefore+'Technology FAQs','"/soc/technology/socweb.html" onMouseOver=\'Show(6);',textBefore+'Edit My Web Info','"/soc/technology/app_reservations.html" onMouseOver=\'Show(6);',textBefore+'Online Reservations'																																																																																																																																																																																																																																																																																																																																		);

Layer[7] = new LayerSpecs(leftStart+xcoord[6],ycoord[6],200,'','');

Layer[8] = new LayerSpecs(leftStart+xcoord[7],ycoord[7],200,'"/soc/internal/index.html" onMouseOver=\'Show(8);',textBefore+'Direct Access','"/soc/pages/gateway_info.html" onMouseOver=\'Show(8);',textBefore+'HUID Authentication');

////////////////////////////////////////////////////////////////

j = (Layer[0]) ? 0:1;

for(i=j; i<Layer.length; i++) {
	if(isIE45 && No3 || isNav6) { document.write("<SPAN ONMOUSEOVER='clearTimeout(timer)' ONMOUSEOUT='Hide("+i+")' ID='L"+i+"' STYLE='POSITION:ABSOLUTE; VISIBILITY:HIDDEN; BACKGROUND:"+background+"; TOP:"+Layer[i].top+"; LEFT:"+Layer[i].left+";'>"+Layer[i].info+"</SPAN>"); }

	else if(isNav4 && No3) { document.write("<LAYER ONMOUSEOVER='clearTimeout(timer)' ONMOUSEOUT='Hide("+i+")' ID='L"+i+"' POSITION=ABSOLUTE VISIBILITY=HIDDEN BGCOLOR='"+bgcolor+"' BACKGROUND='"+background+"' TOP="+Layer[i].top+" LEFT="+Layer[i].left+">"+Layer[i].info+"</LAYER>"); }
}
/* function regenerate(){
window.location.reload()
}
function regenerate2(){
setTimeout("window.onresize=regenerate",450)
}
window.onload=regenerate2    
*/
// -->



function Show() { 
	if(layer){
		if(timer) clearTimeout(timer);
		
		for(menu=0; menu<Layer.length; menu++) {
			if(Layer[menu]) { 
				eval(layer).visibility = "hidden"; 
			} 
		}
		
		for(i=0; i<arguments.length; i++) { 
			menu=arguments[i]; eval(layer).visibility = "visible"; 
		}
	}
}

function Hide(){ 
	timer = setTimeout("Show()", 200); 
}

function Highlite(a) {
	//var hl=document.getElementById(a);
	//hl.style.backgroundColor=hovercolor;
}

function Dim(a) {
	//var dim=document.getElementById(a);
	//dim.style.backgroundColor=bgcolor;
}
