this в обычных условиях
объект, в методе которого находиимся |
Не нужно гнать:) Событие и есть метод дом-объекта, так что this ведет себя нормально ("в обычных условиях" :) ).
|
function qwerty(){
this.abc=10;
.......
this.eventProcesser=function(evt){...}
canvas.addEventListener("click",this.eventProcesser,false);
}
var a=new qwerty();
как получить a из обработчика события? window.a не предлагать |
По-моему, это this-головного мозга... Как бы то ни было, у меня никогда таких проблем не возникало!
|
По-моему мнению, использование здесь конструктора - это явный бред.. Но это лирика. А по теме, не поверишь:
a.abc |
а если у меня куча экземпляров а, все в разных переменных ?
а если я а как-то по другому назову? нужно как-то почище |
Ну раз так хочется через конструктор делать, придется сохранять this в локальную переменную. Тип того:
function qwerty(){
var that = this;
this.abc=10;
.......
this.eventProcesser=function(evt){
that.abc;
...}
canvas.addEventListener("click",this.eventProcesser,false);
}
var a=new qwerty();
|
спасибо
а то я пытался через свойство сделать, почему-то не получалось
function qwerty(){
....
this.eventProcesser=function(evt){
console.log(self);//window
}
this.eventProcesser.self=this;
canvas.addEventListener("click",this.eventProcesser,false);
}
|
| Часовой пояс GMT +3, время: 16:38. |