首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正确定位`el`和`$el`

正确定位`el`和`$el`
EN

Stack Overflow用户
提问于 2012-02-06 21:13:38
回答 1查看 491关注 0票数 1

我有一个带有许多.element子对象的#root DOM对象:

代码语言:javascript
复制
<div id='root'>
  <div class='element'>
    <span>Element 1</span>
  </div>
  <div class='element'>
    <span>Element 2</span>
  </div>
  <div class='element'>
    <span>Element 3</span>
  </div>
</div>

我希望每个.element都有一个主干视图实例。这是我尝试过的:

代码语言:javascript
复制
var ElementView = Backbone.View.extend({
  initialize: function () {
    _.bindAll(this, 'showText');
    this.setElement('.element');
  },
  events: {
    'click span': 'showText'
  },
  showText: function () {
    console.log('You have clicked ' + $el.text());
  }
});

我初始化我的视图如下:

代码语言:javascript
复制
new ElementView({ model: modelInstance });

问题是.element不够精确,每次初始化$el都是$('.element')[0]。当许多元素都有相同的CSS选择器时,我该如何处理?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-06 21:36:25

使用相关元素初始化视图:

代码语言:javascript
复制
$(".element").each(function(ix,el) {
    new ElementView({ model: modelInstance , el:el });
});

不要忘记删除initialize代码中的this.setElement('.element');

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9160614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档