Matze: onmouseover Problem NUR mit dem IE

Hallo zusammen,

ich hab ein Problem mitder Anzeige eines Userbildes in meiner Community.
Wenn der User mit der Maus über einen Usernamen geht, soll das Bild des Users angezeigt werden und mit dem Cursor mitwandern.
Geht alles ideal im FF und im Netscape, aber nicht im IE.
Folgendes Problem:
Wenn ich runterscrolle, bleibt das Bild dennoch oben oder lädt sich erst gar nicht.
Beispiel (Rechte Hälfte, "Fotograf:______" ist mit dem Mouseovereffekt versehen:
http://www.tr3ndz.de/index.php?option=com_fronterpage
(Wie gesagt, tritt nur im IE auf)

Weiß vielleicht jemand woran das liegen könnte?

Grüße
__________________________________________________________________
HTML:
<div id="userpicshow"><img style="width:180px;" name="upic" alt="Userbild" src="mouseover/wait.gif" /></div>

<a href="index.php?option=com_comprofiler&task=userProfile&user=33" onmouseover="showmeuser('33')" onmouseout="hidemeuser()">Name</a>';
--------------------------------------------------------
CSS:
--------------------------------------------------
<style type="text/css">
#userpicshow {
  display:none;
  position:absolute;
  width:auto;
  background-color:#bbbbbb;
  border:1px solid #000000;
  z-index:20;
}
</style>
JAVASCRIPT:
_______________________________________________________________

<script type="text/javascript" language="javascript">
var nMouseX = 0;
var nMouseY = 0;
var showuser = false;
function picposition(id, x, y) {
  if(document.getElementById(id)) {
    document.getElementById(id).style.left = x + 'px';
    document.getElementById(id).style.top = y + 'px';
  }
}
function show(id) {
  if(document.getElementById(id)) {
    document.getElementById(id).style.display = 'block';
  }
}
function hide(id) {
  if(document.getElementById(id)) {
    document.getElementById(id).style.display = 'none';
  }
}

function showmeuser(id) {
  if(document.getElementById('userpicshow')) {
    picposition('userpicshow', nMouseX +20, nMouseY - 160);
    document.images['upic'].src = 'imagesPool/'+id+'';
    show('userpicshow');
    showuser = true;
  }
}

function hidemeuser() {
  if(document.getElementById('userpicshow')) {
    hide('userpicshow');
    document.images['upic'].src = 'mouseover/wait.gif';
    showuser = false;
  }
}

if(showuser) {
    picposition('userpicshow', nMouseX + 20, nMouseY - 160);
  }
function picmove(evt) {
  if(evt) {
    nMouseX = evt.pageX;
    nMouseY = evt.pageY;
  } else if(window.event.clientX) {
    nMouseX = window.document.body.scrollLeft+window.event.clientX;
    nMouseY = window.document.body.scrollTop+window.event.clientY;
  }
  if(showuser) {
    picposition('userpicshow', nMouseX + 30, nMouseY - 5);
  }
}

document.onmousemove = picmove;

</script>

  1. Hallo Matze,

    Wenn ich runterscrolle, bleibt das Bild dennoch oben oder lädt sich erst gar nicht.

    nMouseX = window.document.body.scrollLeft+window.event.clientX;
        nMouseY = window.document.body.scrollTop+window.event.clientY;

    je nach doctype/Browsermodus solltest Du mal "window.document.documentElement.scrollLeft" probieren.

    Gruß, Jürgen

    1. je nach doctype/Browsermodus solltest Du mal "window.document.documentElement.scrollLeft" probieren.

      Funktioniert wunderbar, Herzlichen Dank Jürgen!