I think i put the anonymous function in there wrong... when it outputs listzonebuffs it includes the function(){... part.
function load(zone){
setupzonebuffs(zone);
document.getElementById('zonetitle').innerHTML=zone;
listzonebuffs="";
if(zonebuffs['B']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["B"]>1){return "good";}else{return "bad";}}+"\'>Brute Force "+function(){if(zonebuffs['B']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['B'])*100))+"%</span>";}
if(zonebuffs['W']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["W"]>1){return "good";}else{return "bad";}}+"\'>Wind "+function(){if(zonebuffs['W']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['W'])*100))+"%</span>";}
if(zonebuffs['I']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["I"]>1){return "good";}else{return "bad";}}+"\'>Ice "+function(){if(zonebuffs['I']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['I'])*100))+"%</span>";}
if(zonebuffs['E']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["E"]>1){return "good";}else{return "bad";}}+"\'>Energy "+function(){if(zonebuffs['E']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['E'])*100))+"%</span>";}
if(zonebuffs['F']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["F"]>1){return "good";}else{return "bad";}}+"\'>Fire "+function(){if(zonebuffs['F']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['F'])*100))+"%</span>";}
if(zonebuffs['R']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["R"]>1){return "good";}else{return "bad";}}+"\'>Earth "+function(){if(zonebuffs['R']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['R'])*100))+"%</span>";}
if(zonebuffs['A']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["A"]>1){return "good";}else{return "bad";}}+"\'>Astronomical "+function(){if(zonebuffs['A']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['A'])*100))+"%</span>";}
if(zonebuffs['S']!=1){listzonebuffs+="<span class=\'"+function(){if(zonebuffs["S"]>1){return "good";}else{return "bad";}}+"\'>Stealth "+function(){if(zonebuffs['S']>1){return "+";}else{return "-";}}+" "+Math.round(Math.abs((1-zonebuffs['S'])*100))+"%</span>";}
document.getElementById('listzonebuffs').innerHTML=listzonebuffs;
}
var zonebuffs=new Array();
zonebuffs['B']=1;zonebuffs['W']=1;zonebuffs['I']=1;zonebuffs['E']=1;zonebuffs['F']=1;zonebuffs['R']=1;zonebuffs['A']=1;zonebuffs['S']=1;
function setupzonebuffs(zone){
switch(zone){
case 'Mist':
zonebuffs['S']=1.3;zonebuffs['W']=1.1;zonebuffs['F']=.9;
break;
}
}