Приветствую всех. Суть следующая:
Есть класс объявленный через function(){}, внутри него через this. объявлены функции. В одной из функции я бинжу событие на элемент и вызываю другую функцию при срабатывании. Причем функцию вызываю из этого-же класса через this.myfunction().
Проблема в том, что при срабатывании события, браузер печатает ошибку, что функция не является функцией. При этом если просто вызвать функцию, то все работает..
Код примерно такой:
function MyClass(){
this.elem = document.getElementById('someelem');
this.myvar;
this.myfunc1 = function(){
this.myfunc2(); // Работает
this.elem.addEventListener("mousedown", function(event){
this.myfunc2(); // Не работает. Выдает ошибку "is not a function"
this.myvar = 25; // Простая переменная работает
}, false);
};
this.myfunc2 = function(){
do something...
};
};
В гугле пробовал искать, ничего не нашел.
Пробовал так же забиндить через "this.elem.onmousedown = function(){this.myfunc2();};", но тоже не помогает(
Собственно вопрос в том, как мне забиндить внутреннюю функцию на событие?