1

私は Backbone を初めて使用し、そのアイデアを理解していますが、単純な toggleClass 関数を適切に記述するのに問題があります。私のサイトは四角形のグリッドであり、四角形に「ホバー」クラスがあると、CSSによって外観が変化します(明らかに)。私の問題は、toggleClass が機能していないことです。私のコードは次のとおりです。

var IndexView = Backbone.View.extend({
el: $('#main'),
indexTemplate: $("#indexSquare").template(),

events: {
"mouseover .square"  : "mouseovercard"
},

render: function() {
    removeFallbacks();
    var sg = this;

    this.el.fadeOut('fast', function() {
    sg.el.empty();
    $.tmpl(sg.indexTemplate, sg.model.toArray()).appendTo(sg.el);
    sg.el.fadeIn('fast');
    });
    return this;
},

mouseovercard: function() {

    $(this).toggleClass('hover')
    console.log("hey you're hovering!")

}

});

ここで正確に何が間違っていますか?どんな助けでも大歓迎です!

4

2 に答える 2

3

thisコードでオブジェクトを参照し、オブジェクトのプロパティをView使用します。currentTargetevent

mouseovercard: function(event) {
    $(event.currentTarget).toggleClass('hover');
    console.log("hey you're hovering!");
}
于 2013-05-08T00:35:36.290 に答える