Hi. I have a script that a client says is crashing IE 5 and up on the Mac. I looked through the compatability chart here: http://www.quirksmode.org/ and can't figure out what part of the script could be the problem. It looks to me like everything used should be supported. Unfortunately, I don't have a Mac to test it. Here's the code for the page...

<HTML><HEAD><TITLE>JavaScript Test</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<META content="MSHTML 6.00.2800.1458" name=GENERATOR>
<META http-equiv=Content-Style-Type content=text/css><LINK
href="base_files/Info.css" type=text/css rel=stylesheet>
<SCRIPT language=javascript src="base_files/Nav.js">
</SCRIPT>

<SCRIPT language=javascript>
LNav = new Navigator("Common/Images/","130") ;
LNav.addHeader("Destinations") ;

</SCRIPT>

<SCRIPT language=JavaScript>
<!--
function MM_showHideLayers() { //v3.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible'v='hide')?'hidden':v; }
obj.visibility=v; }
}

function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
//-->
</SCRIPT>
</HEAD>
<BODY bgColor="#ffffff" leftMargin="0" topMargin="0" onLoad="LNav.setParent(document.getElementById('LeftNavigator'));" marginheight="0" marginwidth="0">

<DIV id="LeftNavigator"
style="Z-INDEX: 2; LEFT: 399px; WIDTH: 130px; POSITION: absolute; TOP: 101px; HEIGHT: 369px"></DIV>

<NOSCRIPT></NOSCRIPT></BODY></HTML>


and here's base_files/Nav.js:

var sectionSelected = 'sOurOpinion';
var navigatorSelected = 'mOurOpinion' ;

function Navigator(ImagePath,Width) {

this.Par = "" ;
this.Hclass = "Heading" ;
this.width = Width ;
this.Root = document.createElement("TABLE") ;
this.SectionCount = 0 ;
this.Sections = new Array() ;
this.Root.width = this.width ;
this.Root.border = 0 ;
this.Root.cellPadding = 0 ;
this.Root.cellSpacing = 0 ;
this.Body = document.createElement("TBODY") ;
this.ImagePath = ImagePath ;
this.expanded = document.createElement("IMG") ;
this.expanded.src = this.ImagePath + "expanded.gif" ;

this.Root.appendChild(this.Body) ;

function setParent(obj) {
this.Par = obj ;
obj.appendChild(this.Root) ;
}

this.setParent = setParent ;

function showHideNode(event) {

var imageSource, imageName , imagePath ;

imageSource = this.previousSibling.src ;
imageName = this.previousSibling.nameProp ;
imagePath = imageSource.substring(0,imageSource.length - imageName.length) ;

if (this.nextSibling.style.display == "none") {
this.nextSibling.style.display = "" ;
this.previousSibling.src = imagePath + "expanded.gif" ;
} else {
this.nextSibling.style.display = "none" ;
this.previousSibling.src = imagePath + "collapsed.gif" ;
}
}

this.showHideNode = showHideNode ;

function addHeader(Text) {

var oRow,oCell,oLink ;

oRow = document.createElement("TR") ;
this.Body.appendChild(oRow) ;
oCell = document.createElement("TD") ;

oRow.appendChild(oCell) ;
oCell.innerText = Text ;
oCell.className = this.Hclass ;
}

this.addHeader = addHeader ;


return(this) ;
}