eventsを使う

index.html

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="utf-8">
    <meta name="Content-Type" content="text/html charset=utf-8"/>
</head>
<body>
<script type="text/template" id="foo">
    <p><u><%- n %></u></p>
</script>
<script src="js/underscore.js"></script>
<script src="js/jquery.js"></script>
<script src="js/backbone.js"></script>
<script src="js/test.js"></script>
</body>
</html>

test.js

(function() {

// モデル
var M = Backbone.Model.extend({
    defaults: {
    n: "クリック",
}
});
var m = new M(); // モデルのインスタンス作成

// 描画
var V = Backbone.View.extend({
    events: {
        "click": "a" // クリックすると、aのメソッドを実行
    },
    a: function() { // aのalertメソッド
        alert('thanks');
    },
    T: _.template( $('#foo').html() ), // htmlのid=fooをtemplateに指定
    render: function() {
        var t = this.T(this.model.toJSON()); // templateにmodelを渡す
        this.$el.html(t); // tをhtmlの要素とする
        return this; // renderの時はreturn this;を最後に
    }
});
var v = new V({ model:m }); // ビューのインスタンス作成
$('body').append(v.render().$el); // bodyにインスタンスのvの$elを付与する

})();

http://dotinstall.com/lessons/basic_backbonejs/22409



Game's Pain (feat. Keyshia Cole)

Game's Pain (feat. Keyshia Cole)

  • ザ・ゲーム
  • Hip Hop/Rap
  • ¥200