Реализация событий в моем собственном объекте

То, что я хочу иметь, это пользовательский объект, который обеспечивает некоторые события. Например:

var CustomObjectTextChangedEventName = 'textChanged';
var CustomObject = function () {
    var _this = this;
    var _text = "";

    _this.OnTextChanged = document.createEvent("Event");
    _this.OnTextChanged.initEvent(CustomObjectTextChangedEventName, true, false);

    _this.ChangeText = function (newText) {
        _text = newText;
        fireTextChanged();
    };

    function fireTextChanged() {
        _this.dispatchEvent(_this.OnTextChanged);
    }
}

Код для использования события будет выглядеть так:

myCustomObject = new CustomObject();
myCustomObject.addEventListener(CustomObjectTextChangedEventName, handleTextChanged, false);

Как видите ... способ использования событий в JS по умолчанию. Но я не могу сделать это беспокойным ...

В настоящее время моя проблема заключается в том, что мой объект не реализует & quot; addEventListener & quot; и "dispatchEvent". Но эти функции обычно реализуются из "элемента" ...

Могу ли я сделать их доступными каким-либо образом или я должен реализовать их самостоятельно? Как мне их реализовать? Должен ли я реализовать свою собственную обработку событий? (наличие внутреннего списка обработчиков, функции «добавить» - и «удалить» и запускать каждый обработчик, когда я хочу запустить событие)

Привет!

Ответы на вопрос(4)

Ваш ответ на вопрос