Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.11.2010, 20:10
Аватар для KOLANICH
Профессор
Отправить личное сообщение для KOLANICH Посмотреть профиль Найти все сообщения от KOLANICH
 
Регистрация: 22.11.2008
Сообщений: 277

this в обычных условиях
объект, в методе которого находиимся
Ответить с цитированием
  #12 (permalink)  
Старый 04.11.2010, 20:19
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Не нужно гнать Событие и есть метод дом-объекта, так что this ведет себя нормально ("в обычных условиях" ).
Ответить с цитированием
  #13 (permalink)  
Старый 04.11.2010, 20:24
Аватар для KOLANICH
Профессор
Отправить личное сообщение для KOLANICH Посмотреть профиль Найти все сообщения от KOLANICH
 
Регистрация: 22.11.2008
Сообщений: 277

function qwerty(){
this.abc=10;
.......
this.eventProcesser=function(evt){...}
canvas.addEventListener("click",this.eventProcesser,false);
}

var a=new qwerty();

как получить a из обработчика события?
window.a не предлагать

Последний раз редактировалось KOLANICH, 04.11.2010 в 20:26.
Ответить с цитированием
  #14 (permalink)  
Старый 04.11.2010, 20:32
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

По-моему, это this-головного мозга... Как бы то ни было, у меня никогда таких проблем не возникало!
Ответить с цитированием
  #15 (permalink)  
Старый 04.11.2010, 20:50
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

По-моему мнению, использование здесь конструктора - это явный бред.. Но это лирика. А по теме, не поверишь:
a.abc
Ответить с цитированием
  #16 (permalink)  
Старый 04.11.2010, 21:04
Аватар для KOLANICH
Профессор
Отправить личное сообщение для KOLANICH Посмотреть профиль Найти все сообщения от KOLANICH
 
Регистрация: 22.11.2008
Сообщений: 277

а если у меня куча экземпляров а, все в разных переменных ?

а если я а как-то по другому назову?
нужно как-то почище

Последний раз редактировалось KOLANICH, 04.11.2010 в 21:16.
Ответить с цитированием
  #17 (permalink)  
Старый 04.11.2010, 21:21
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Ну раз так хочется через конструктор делать, придется сохранять 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();
Ответить с цитированием
  #18 (permalink)  
Старый 04.11.2010, 21:41
Аватар для KOLANICH
Профессор
Отправить личное сообщение для KOLANICH Посмотреть профиль Найти все сообщения от KOLANICH
 
Регистрация: 22.11.2008
Сообщений: 277

спасибо
а то я пытался через свойство сделать, почему-то не получалось
function qwerty(){
....
this.eventProcesser=function(evt){
console.log(self);//window
}


this.eventProcesser.self=this;
	canvas.addEventListener("click",this.eventProcesser,false);
	
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавить на canvas еще один елемент greengarlic Общие вопросы Javascript 5 22.09.2010 10:16
Можно ли узнать назначенные события MainBuh Events/DOM/Window 4 17.08.2010 11:22
События Jquery и не только Tohin Events/DOM/Window 3 21.08.2009 14:57
Drug&Drop + всплывание события = проблемы =(( _NoName_ Events/DOM/Window 4 05.03.2009 17:47
Явный вызов процедуры обработки события. supchik Общие вопросы Javascript 18 27.01.2009 13:16