Manipulador de eventos Javascript com parâmetros
Eu quero fazer um eventHandler que passe o evento e alguns parâmetros. O problema é que a função não recebe o elemento. Aqui está um exemplo:
<code>doClick = function(func){ var elem = .. // the element where it is all about elem.onclick = function(e){ func(e, elem); } } doClick(function(e, element){ // do stuff with element and the event }); </code>
O 'elem' deve ser definido fora da função anônima. Como posso obter o elemento passado para usar dentro da função anônima? Existe uma maneira de fazer isso?
E quanto a addEventListener? Eu não consigo passar o evento através de um addEventListener em tudo que eu faço?
Atualizar
Eu parecia consertar o problema com 'isso'
<code>doClick = function(func){ var that = this; this.element.onclick = function(e){ func(e, that); } } </code>
Onde isso contém this.element que eu possa acessar na função.
O addEventListener
Mas eu estou querendo saber sobre o addEventListener:
<code>function doClick(elem, func){ element.addEventListener('click', func(event, elem), false); } </code>