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))
}