View.prototype.bind = function()

in resources/todomvc/vanilla-examples/javascript-es5/src/view.js [175:210]


    View.prototype.bind = function (event, handler) {
        var self = this;
        if (event === "newTodo") {
            $on(self.$newTodo, "change", function () {
                handler(self.$newTodo.value);
            });
        } else if (event === "removeCompleted") {
            $on(self.$clearCompleted, "click", function () {
                handler();
            });
        } else if (event === "toggleAll") {
            $on(self.$toggleAll, "click", function () {
                self.$toggleAllInput.click();
                handler({ completed: self.$toggleAllInput.checked });
            });
        } else if (event === "itemEdit") {
            $delegate(self.$todoList, "li label", "dblclick", function () {
                handler({ id: self._itemId(this) });
            });
        } else if (event === "itemRemove") {
            $delegate(self.$todoList, ".destroy", "click", function () {
                handler({ id: self._itemId(this) });
            });
        } else if (event === "itemToggle") {
            $delegate(self.$todoList, ".toggle", "click", function () {
                handler({
                    id: self._itemId(this),
                    completed: this.checked,
                });
            });
        } else if (event === "itemEditDone") {
            self._bindItemEditDone(handler);
        } else if (event === "itemEditCancel") {
            self._bindItemEditCancel(handler);
        }
    };