Il problema è che le funzioni associate agli Eventi hanno come scope l'oggetto window, non lo scope nel momento in cui vengono definiti. Puoi implementare una funzione chiamata bind, da chiamare al momento della definizione dell'evento:

http://snipplr.com/view/2756/bind/

il tuo codice diverrebbe

codice:
this.domElement.onmousemove=bind(function(event){
    //Offset in pixel del canvas rispetto all'angoli in alto a sx della pagina TODO considerare l'albero completo di oggetti parent
   if(event.pageX){
      var canvasOffset=new Array(this.domElement.parentNode.offsetLeft,this.domElement.parentNode.offsetTop);
      var mousePos=new Array(event.pageX-canvasOffset[0],event.pageY-canvasOffset[1]);
      if(this.tileMap!=null)
         alert(mousePos[0]+' '+mousePos[1]);
      else
         alert('no tilemap loaded');
   }
   //else TODO implementare compatibilità con IE7+
}.bind(this)