Markus: Funktion aufrufen

Hallo zusammen,

irgendwie stehe ich auf dem Schlauch:

Ich möchte über onmouseover eine Funktion aufrufen, welche eine Ebene durch eine andere auswechselt. Dies sieht folgendermaßen aus:

...
<a href="..." onmouseover="changeLayer(1)"></a>
<div id="info1" class="...">...</div>
...

Die Funktion ist extern gespeichert und sieht wie folgt aus:

/* Funktionen zum Wechseln der Infoebenen */

var lastlayernumber = 1;
var active;
var changeInterval = 5000;

function changeLayerStop() {
window.clearTimeout(active);
}

function changeLayerRestart(layernumber) {
active = window.setTimeout("changeLayer(" + nextlayernumber + ")", changeInterval);
}

function changeLayer(layernumber){
hideLayer(eval('"info' + lastlayernumber +'"'));
showLayer(eval('"info' + layernumber +'"'));

lastlayernumber = layernumber;

window.clearTimeout(active);

if (lastlayernumber < 100) {
  changeInterval = 10000;
  nextlayernumber = Math.round(Math.random() * 10) + 100;
}
else {
  nextlayernumber = lastlayernumber + 1;
}

if (nextlayernumber > 100) {
  nextlayernumber = 100;
}

active = window.setTimeout("changeLayer(" + nextlayernumber + ")", changeInterval);
}

function hideLayer(name) {
document.getElementById(name).style.visibility = "hidden";
}

function showLayer(name) {
document.getElementById(name).style.visibility = "visible";
}

So das interessante daran ist, dass wenn ich diese Funktion über

<img src="..." onmouseover="changeLayer(1);">

aufrufe, funktioniert alles wunderbar. Nur bei <a> und <area> nicht?

Sieht jemand zufällig den Fehler? Muss irgendwie "return true" zurückgeben?

Danke für die Hinweise!

P.s: Ich weiß, das Skript ist nicht cross-browser-fähig, aber stört auch nicht weiters, da 90% der aktuellen Browser kein Problem damit haben und den sontigen Usern keine Informationen vorenthalten werden.