Есть шаблон который вставляется несколько раз на страницу. В шаблоне много интерактива, т.е. по изменению одного поля меняется другое поле и т.п. делаю их с именами полей ..._0, ..._1 и т.п. пишу класс для обработки со свойством name='0', name='1' и т.п. function Myclass() { } function func1() { ... } Myclass.prototype.name=''; Myclass.prototype.func1=func1; MyObj= new Myclass; MyObj.name=0; пока все прекрасно, this.hash['a']['b'] , getElementById('xxx_'+this.name) и т.п. в интерактиве есть вешалка на таймаут по onkeyup. туда вызова this.func() не получается, вызывается видимо прототип функции без класса. никакого this там уже нет. могу сделать вызов OutFunc(uid) вместо this.InnerFunc(); но как потом обращаться к свойствам класса? Переделал, создал массив объектов MyObj = Array(); MyObj[0]= new MyClass; ... все стало коряво, но работает. До тех пор пока не вызывается onkeyUp на поле. объект MyObj0 он согласен видеть, MyObj[0] ни за что.
onkeyup="xUp(0)" function xUp(uid) { alert(MyObj[0].name); } НЕ работает. Ошибка: MyObj is not defined onkeyup="xlx(0)" function xlx(uid) { if (timeout0) clearTimeout(timeout0); timeout0 = setTimeout(xUp(uid), 1); } Работает. Я не хочу ТАК жить.