【问题标题】:Backbone scroll event not firing骨干滚动事件未触发
【发布时间】:2012-11-20 19:42:19
【问题描述】:

骨干滚动事件不会触发。单击事件和 jquery 附加滚动有效。这也是一个小提琴:http://jsfiddle.net/cX2UV/

js

var TView = Backbone.View.extend({        
    events: {
        'scroll .content': 'loadMore',
        'click .code': 'codeClick'
    },

    loadMore: function() {
        this.$el.append('<p>backbone scrolling</p>');
    },

    codeClick: function() {
        this.$el.append('<p>clicking</p>');
    }
});

new TView({ el: '.target' });

$('.content').scroll(function(){ $('.target').append('jq scrolling...'); });

html

<div class="target">
<div class="content">
    <div>
        <span class="text">text</span>
        <span class="term">termmm</span>
        <span class="codes"><span class="code">12345</span></span>
    </div>
    <div>
        <span class="text">text</span>
        <span class="term">termmm</span>
        <span class="codes"><span class="code">12345</span></span>
    </div>  
</div>
</div>

css

body {margin:1em;}
.content {background:#EEE; height: 200px; overflow: scroll;}
.code{color:#00c}

【问题讨论】:

    标签: jquery backbone.js backbone-events


    【解决方案1】:

    当使用选择器将事件绑定到视图时,Backbone 使用 jQuery 的delegate。如an answer to this question 中所述,scroll 事件doesn't bubble up 因此处理程序无法响应它。

    【讨论】:

      猜你喜欢
      • 2011-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多