我似乎對下面的代碼有問題。我在我的html中有一個id ='content'的div元素。我想用div元素替換el屬性的'body'元素,但是當我輸入el時,我的hello world文本不會變成:$('div')或者el:$('div#content')或者el:$( '#內容')。我是backbone.js的初學者,根據我的理解,我相信這個el屬性擁有我們的父標籤,我們所有的模板都將作爲子元素添加(在這種情況下,'body'標籤是父代,'p'標籤是兒童)。不能夠將el元素附加到骨幹中的el元素。
(function($){
var ListView = Backbone.View.extend({
el: $('body'),
initialize: function(){
this.render();
},
render: function(){
(this.el).append("<p>Hello World</p>");
}
});
var listView = new ListView();
})(jQuery);
有趣的是,我的代碼(用div標籤代替body標籤)在jsfiddle中工作,而不是在我的電腦中工作。最重要的是,當它選擇div標籤時,'this。$ el.'是'undefined'。 – jaykumarark
@jaykumarark,你還沒有發佈jsfiddle的鏈接,但我最好的猜測是,在jsfiddle中,視圖是在body.onload事件處理器中定義的(DOM被加載後),因此元素已經存在。 – jevakallio
http://jsfiddle.net/whcmU/4/那就是鏈接。似乎代碼不會在我的計算機中顯示我的div標記中的文本。 – jaykumarark