Siii, eso sí que funciona!!
Bueno, al final me quedó así de simple el código, y lo hace todo como se espera:
Código PHP:
<!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" xml:lang="es" lang="es">
<head>
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<meta name="Author" content="derkeNuke" />
<title>Página nueva</title>
<style type="text/css">
</style>
</head>
<body>
<div id="botonNaranja">NARANJA</div><br/>
<div id="botonAzul">AZUL</div><br/>
<div id="botonVerde">VERDE</div><br/>
<div id="info">_</div>
<script type="text/javascript">
<!--
// document.getElementById abreviado
function $(x) { return document.getElementById(x); }
function listen(elem, evento, func) {
if (elem.addEventListener) // W3C DOM
elem.addEventListener(evento,func,false);
else if (elem.attachEvent) { // IE DOM
var r = elem.attachEvent("on"+evento, func);
return r;
}
else throw "No es posible añadir evento";
}
function setInfo(evt) {
// Obtenemos el elemento asociado al evento
var adonde = evt.target || window.event.srcElement;
// Detectamos el tipo de evento (mouseover|mouseout)
var tipo = evt.type || window.event.type;
if( tipo == "mouseover" ) // Si estamos entrando
str = adonde.getAttribute("id").replace("boton", "").toLowerCase();
else // Si estamos saliendo colocamos "_"
var str = "_";
$("info").innerHTML = str;
}
listen( window, "load", function() {
btnNaranja = $("botonNaranja");
btnAzul = $("botonAzul");
btnVerde = $("botonVerde");
listen( btnNaranja, "mouseover", setInfo);
listen( btnNaranja, "mouseout", setInfo);
listen( btnAzul, "mouseover", setInfo);
listen( btnAzul, "mouseout", setInfo);
listen( btnVerde, "mouseover", setInfo);
listen( btnVerde, "mouseout", setInfo);
} );
// -->
</script>
</body>
</html>
Probablemente me ahorraré un par de funciones con ésto.
Gracias
kepawe!