Описываю класс:
function Item (row, type) {
appendKids ( this.container = newel('div', type, type+'_'+row['id'])
, this.before_cell = newel('div', 'before_cell')
, this.data_cell = newel('div', 'data_cell')
, this.after_cell = newel('div', 'after_cell')
);
}
(newel - простенькая обертка для создания элемента с классом и ID, appendKids - функция, поочередно добавляющая к первому аргументу все последующие в качестве дочерних)
Далее - обьявляю класс, который наследует первый:
function extend(Parent, Child) {
var F = function() { }
F.prototype = Parent.prototype
Child.prototype = new F()
Child.prototype.constructor = Child
Child.superclass = Parent.prototype
}
function Topic (row, type) {
var clickload = function(){
alert('test!');
}
this.after_cell.onclick = clickload;
}
extend(Item, Topic);
somevar = new Topic(row, type);
Получаю ошибку "this.after_cell is undefined" то есть свойство не передается.
Что я делаю не так?