Passando variáveis ​​para funções anônimas

É realmente muito fácil, mas ainda assim algumas pessoas parecem não saber disso. Vou dar um exemplo:

function hover(e) {
document
.getElementById('block').innerHTML = (function (_this, event) {
return (event.pageX-_this.offsetLeft)+','+(event.pageY-_this.offsetTop);
})(this, e);
}

document
.getElementById('block').addEventListener('mousemove', hover, true);

A função irá invocar a si mesma devido à sua definição

(function(arg1,arg2) { /* logic */ })(passedArg1, passedArg2);

E é isso. Isso é especialmente útil quando você precisa passar thispara uma função anônima. Espero que isso possa ajudar alguém.

jsFiddle Demo