Podés hacer algo así
Código HTML:
Ver original<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> /*<![CDATA[*/
#Uno,#Dos,#Tres{
border: none;
cursor: pointer;
}
/*]]>*/
<script type="text/javascript"> //<![CDATA[
function reemplazar(cual){
var capas = new Array("Uno", "Dos", "Tres");
var i;
for(i in capas){
var e = document.getElementById(capas[i]);
capas[i] == cual?e.style.border='solid 2px red':e.style.border='none';
}
}
//]]>
<img src="a.jpg" alt="" width="100" height="100" id="Uno" onclick="reemplazar('Uno')" /> <img src="a.jpg" alt="" width="100" height="100" id="Dos" onclick="reemplazar('Dos')" /> <img src="a.jpg" alt="" width="100" height="100" id="Tres" onclick="reemplazar('Tres')" />
en mi ejemplo quito y o elimino el borde de la imagen clickeada, solo te faltaría aplicar el efecto no al borde sino a la sustitución de la imagen o aplicar un filtro que haga escala de grises
Saludos