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   = "#ffffff";	// color name/code for cells on hover
	bgcolor      = "#e3d086";	// color name/code for the cells background
	background   = "";			// picture url in place of bgcolor
//font color
	fncolor      = "maroon"; 	// font color
	hfncolor     = "#66c";   // 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=30;
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 x9 = getDim(document.getElementById("MySpan9")).x+-140;

var y1 = getDim(document.getElementById("MySpan1")).y+1;

var y2 = getDim(document.getElementById("MySpan2")).y+1;

var y3 = getDim(document.getElementById("MySpan3")).y+1;

var y4 = getDim(document.getElementById("MySpan4")).y+1;

var y5 = getDim(document.getElementById("MySpan5")).y+1;

var y6 = getDim(document.getElementById("MySpan6")).y+1;

var y7 = getDim(document.getElementById("MySpan7")).y+1;

var y8 = getDim(document.getElementById("MySpan8")).y+1;

var y9 = getDim(document.getElementById("MySpan9")).y+1;

var xcoord = new Array(x1,x2,x3,x4,x5,x6,x7,x8,x9);
var ycoord = new Array(y1,y2,y3,y4,y5,y6,y7,y8,y9);

var leftStart=140;
var id = 1;

function LayerSpecs(Left,Top,Width) { 
	if(No3) {
		this.left  = Left;
		this.top   = Top;
		this.info  = "";
		var t = Top;
		
		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++) {
			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>";
			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,'"/pages/borrowing.html" onMouseOver=\'Show(2);',textBefore+'Borrowing Information','"/pages/museum_passes.html" onMouseOver=\'Show(2);',textBefore+'Museum Passes','"/pages/general.info.html#hours" onMouseOver=\'Show(2);',textBefore+'Directions / Hours / Contact Us / FAQs','"/pages/general/member.html" onMouseOver=\'Show(2);',textBefore+'Access Your Account','"/pages/general/howtogive.html" onMouseOver=\'Show(2);',textBefore+'How to Give','"/pages/general/staff.html" onMouseOver=\'Show(2);',textBefore+'Departments / Staff','"/pages/general/friends.html" onMouseOver=\'Show(2);',textBefore+'Friends','"/pages/general/governance.html" onMouseOver=\'Show(2);',textBefore+'Governance','"/pages/news.events/recacq.html" onMouseOver=\'Show(2);',textBefore+'Recent Acquisitions','"/FloorMaps.pdf" target="new" onMouseOver=\'Show(2);',textBefore+'Floor Maps');

Layer[3] = new LayerSpecs(leftStart+xcoord[2],ycoord[2],200,'"/pages/general/staff.html#fowler" onMouseOver=\'Show(3);',textBefore+'Staff','"/pages/fowler/fowlerevents.html" onMouseOver=\'Show(3);',textBefore+'Events');

Layer[4] = new LayerSpecs(leftStart+xcoord[3],ycoord[3],200,'"/pages/news.events/recacq.html" onMouseOver=\'Show(4);',textBefore+'Recent Acquisitions','"/pages/general/howtogive.html" onMouseOver=\'Show(4);',textBefore+'How to Give');

Layer[5] = new LayerSpecs(leftStart+xcoord[4],ycoord[4],200,'"http://library.minlib.net/search/" target="new" onMouseOver=\'Show(5);',textBefore+'MLN Catalog','"http://www.mln.lib.ma.us/virtcat.htm" target="new" onMouseOver=\'Show(5);',textBefore+'Virtual MA Catalog','"/pages/digital_media.html" onMouseOver=\'Show(5,11);',textBefore+'Digital Media&nbsp;&raquo;');

Layer[6] = new LayerSpecs(leftStart+xcoord[5],ycoord[5],200,'"/pages/reference/ask.html" onMouseOver=\'Show(6);',textBefore+'Ask A Librarian','"/pages/reference/databases.html" onMouseOver=\'Show(10,6);',textBefore+'Databases&nbsp;&raquo;','"http://www.mln.lib.ma.us/quickfind/" target="new" onMouseOver=\'Show(6);',textBefore+'MLN Internet resources','"/pages/reference/subject.html" onMouseOver=\'Show(6);',textBefore+'Subject Guides','"/pages/reference/searchengines.html" onMouseOver=\'Show(6);',textBefore+'Search Engines','"http://library.minlib.net/search/" target="new" onMouseOver=\'Show(6);',textBefore+'MLN Catalog','"/pages/reference/homework.html" onMouseOver=\'Show(6);',textBefore+'Homework Help','"/pages/reference/rresources.html" onMouseOver=\'Show(6);',textBefore+'Tax Form & Other Resources','"/pages/general/staff.html#ref" onMouseOver=\'Show(6);',textBefore+'Staff');

Layer[7] = new LayerSpecs(leftStart+xcoord[6],ycoord[6],200,'"/scollect/collections.html" onMouseOver=\'Show(7);',textBefore+'Collections','"/scollect/Fin_Aids/index.html" onMouseOver=\'Show(7);',textBefore+'Finding Aids','"/scollect/photos/index.html" onMouseOver=\'Show(7);',textBefore+'Photo Information','"/scollect/Thoreau_Surveys/Thoreau_Surveys.htm" onMouseOver=\'Show(7);',textBefore+'Thoreau Surveys','"/scollect/BuildingHistories/index.html" onMouseOver=\'Show(7);',textBefore+'Historic Buildings','"http://www.nautilusone.biz/CFPL-Search/intro.html" onMouseOver=\'Show(7);',textBefore+'Searchable Antebellum Town Reports',
																																																																																																																																																	
																																																																																																																																																	'"/scollect/social_circle.html" onMouseOver=\'Show(7);',textBefore+'Social Circle Index',
																																																																																																																																																	
																																																																																																																																																	'"/scollect/wheeler.htm" onMouseOver=\'Show(7);',textBefore+'Wheeler Genealogy','"/scollect/exhibits.html" onMouseOver=\'Show(7);',textBefore+'Exhibits','"/scollect/EmersonConcordance/index.htm" onMouseOver=\'Show(7);',textBefore+'Emerson Concordance','"/scollect/GraveMarkers.htm" onMouseOver=\'Show(7);',textBefore+'Grave Markers','"/scollect/bhc/bhc.html" onMouseOver=\'Show(7);',textBefore+'Concord History','"/scollect/Fin_Aids/OralHistories.htm" onMouseOver=\'Show(7);',textBefore+'Oral History Collection','"/scollect/events.html" onMouseOver=\'Show(7);',textBefore+'Events','"/scollect/resources.html" onMouseOver=\'Show(7);',textBefore+'Resources (links)','"/pages/general/staff.html#spcol" onMouseOver=\'Show(7);',textBefore+'Staff');

Layer[8] = new LayerSpecs(leftStart+xcoord[7],ycoord[7],200,'"/pages/children/child.news.html" onMouseOver=\'Show(8);',textBefore+'Children\'s News & Events','"/pages/children/chld.resources.html" onMouseOver=\'Show(8);',textBefore+'Resources For Kids','"/pages/general/staff.html#cya" onMouseOver=\'Show(8);',textBefore+'Departments / Staff');

Layer[9] = new LayerSpecs(leftStart+xcoord[8],ycoord[8],200,'"/pages/children/ya.news.html" onMouseOver=\'Show(9);',textBefore+'News & Events','"/pages/children/ya.resources.html" onMouseOver=\'Show(9);',textBefore+'Resources For Young Adults','"/pages/general/staff.html#cya" onMouseOver=\'Show(9);',textBefore+'Departments / Staff');

Layer[10] = new LayerSpecs(leftStart+xcoord[5]+200+2,ycoord[5]+(cellHeight*1),200,'"/pages/reference/databases.html#bio" onMouseOver=\'Show(6,10);',textBefore+'Biography','"/pages/reference/databases.html#bus" onMouseOver=\'Show(6,10);',textBefore+'Business','"/pages/reference/databases.html#col" onMouseOver=\'Show(6,10);',textBefore+'College Catalogs','"/pages/reference/databases.html#stu" onMouseOver=\'Show(6,10);',textBefore+'For Students / Children','"/pages/reference/databases.html#con" onMouseOver=\'Show(6,10);',textBefore+'Consumer Information','"/pages/reference/databases.html#enc" onMouseOver=\'Show(6,10);',textBefore+'Encyclopedias','"/pages/reference/databases.html#gen" onMouseOver=\'Show(6,10);',textBefore+'General','"/pages/reference/databases.html#hea" onMouseOver=\'Show(6,10);',textBefore+'Health','"/pages/reference/databases.html#his" onMouseOver=\'Show(6,10);',textBefore+'History','"/pages/reference/databases.html#law" onMouseOver=\'Show(6,10);',textBefore+'Law','"/pages/reference/databases.html#lit" onMouseOver=\'Show(6,10);',textBefore+'Literature','"/pages/reference/databases.html#loc" onMouseOver=\'Show(6,10);',textBefore+'Local Resources','"/pages/reference/databases.html#new" onMouseOver=\'Show(6,10);',textBefore+'Newspapers','"/pages/reference/databases.html#sto" onMouseOver=\'Show(6,10);',textBefore+'Stocks & Investments');

Layer[11] = new LayerSpecs(leftStart+xcoord[4]+200+2,ycoord[4]+(cellHeight*1),200,'"/pages/dm_NetLibraryRecordedBooks.html" onMouseOver=\'Show(5,11);',textBefore+'NetLibrary/Recorded Books','"/pages/dm_overdrive.html" onMouseOver=\'Show(5,11);',textBefore+'Overdrive Digital Media');

////////////////////////////////////////////////////////////////

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;
}