Показать сообщение отдельно
  #1 (permalink)  
Старый 08.05.2012, 13:49
z4p z4p вне форума
Новичок на форуме
Отправить личное сообщение для z4p Посмотреть профиль Найти все сообщения от z4p
 
Регистрация: 08.05.2012
Сообщений: 4

Доступность имен полей функций
Имеется код:
function foo(domId)
{
 this.container = document.getElementById(domId);
}

foo.prototype =
{
 f1: function()
 {
  var btn = document.createElement('INPUT');
  btn.setAttribute('type','button');
  btn.setAttribute('value','Button 1');
  btn.onclick = this.f2;
  this.container.appendChild( btn ); // кнопка успешно добавляется
 },
 f2: function()
 {
  alert(this.container); // "undefined" ?!!
 }
}

var ff = new foo('block1');
ff.f1();


Вопрос: почему container не доступен в f2 и как это исправить?
Т.е. какие тут имеются пространства имен (наверное вопрос в этом)?
Ответить с цитированием