dr.colossos: Position eines Bildbereichs markieren

Beitrag lesen

Hi,

so sollte es gehen, sorry, hab's vorher übersehen.

<script>
function t(element, event) {
x = Event.pointerX(event);
alert(x);
}
</script>
<div id="imageitem">
<img onclick="t(this, event);" src="bild.jpg" border="0" vspace="5" />
</div>

Beim onclick musst du das event mitgeben, und folglich auch in der Parameterliste der aufzurufenden Funktion.

Nebenbei:
Das ist der Teil von prototype, der hier benutzt wird.
[...]
    pointer: function(event) {
      return {
        x: event.pageX || (event.clientX +
          (document.documentElement.scrollLeft || document.body.scrollLeft)),
        y: event.pageY || (event.clientY +
          (document.documentElement.scrollTop || document.body.scrollTop))
      };
    },

pointerX: function(event) { return Event.pointer(event).x },
    pointerY: function(event) { return Event.pointer(event).y },
[...]
Evtl. solltest dass einfach in einer eigenen Methode verpacken, und statt prototype verwenden, spart dir einiges!

Etwa so, analog für y:
// all credit goes to prototype.js developers
function getEventX(event)
{
     return event.pageX || (event.clientX +
          (document.documentElement.scrollLeft || document.body.scrollLeft))
}