首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >主干this.el与此.$el

主干this.el与此.$el
EN

Stack Overflow用户
提问于 2014-03-10 15:17:54
回答 1查看 6.3K关注 0票数 3

对于给定的示例,this.elthis.$el的区别是什么?

据我所知,this.$el指向this.el的jQuery对象,在本例中是'li'

在呈现视图时,可以在this.elthis.$el之间进行选择。当我引用jQuery对象时,我如何能够将某些东西呈现给页面呢?我可以看到如何使用this.$el.html(property),指向html,但是为什么追加this.$el并让它呈现才是让我困惑的原因。

代码语言:javascript
复制
var Person = Backbone.Model.extend({
    defaults: {
        name: 'John Doe',
        age: 30,
        occupation: 'worker'
    }
});

var PersonView = Backbone.View.extend({
    tagName: 'li',

    initialize: function() {
        this.render();
    },

    render: function() {
        var out = this.$el.html(this.model.get('name') + this.model.get('occupation'));
        console.log(this, this.el, this.$el, out);
        $('body').append(this.$el);
    },

});

var person = new Person;
var personview = new PersonView({model: person});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-10 15:27:49

博雅尔是对的。

this.$el是对jQuery上下文中元素的引用,通常用于.html().addClass()等。例如,如果您有id someDiv的div,并将其设置为主干视图的el属性,则以下语句是相同的:

this.$el.html() $("#someDiv").html() $(this.el).html()

this.el是本机DOM元素,不受jQuery的影响。

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

https://stackoverflow.com/questions/22304100

复制
相关文章

相似问题

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