作者mrbigmouth (拒绝崩溃的蒲公英)
看板Ajax
标题Re: [问题] Backbone View 怎麽改用jQuery?
时间Mon Feb 18 09:43:01 2013
简单一点就是像这样
function Card(data) {
var template =
'<div>' +
'<h1>' + data.title + '</h1>' +
'<p>' + data.content + '</p>' +
'</div>'
;
this.data = data;
this.$ = $($.parseHTML(template));
this.$.appendTo('body');
}
var card1 = new Card({'title' : '卡片的标题'
,'content': '卡片的内容'
})
这样绑事件可以card1.$.on('h1', 'click', function(){....})
或者直接在function Card里面新建区块时做....(重复性的功能最好都如此)
更多功能就请自己研究吧
※ 引述《superpai (超级白)》之铭言:
: 最近用22kopendata的api做了个小玩具 http://22.kjobs.info/
: 网站上每个职缺卡片都是new一个Backbone.View的
: 因为网站也不会再扩充了,觉得要拉underscore + backbone还蛮浪费的
: 但是我没有backbone就不会写这种重复性的区块
: 每个区块都有自己的event和data
: 所以想请教一下拿掉backbone以後要怎麽改写?
: js在这边 http://22.kjobs.info/javascripts/app.js
: (CoffeeScript编译的)
: 感谢
: ----
: 补充一下,主要是
: view = new JobView({
: data: job,
: template: JobTemplate,
: detailTemplate: JobDetailTemplate,
: count: current_job_count + i
: });
: 这个地方,每次丢进去的data和count是不一样的,
: 让生出来的html也不一样
: 所以没有backbone的话不知道怎麽改用jQuery写
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.190.145
1F:→ mrbigmouth:不过如果要更多复杂的功能,其实用backbone就好了 02/18 09:44
2F:→ mrbigmouth:也没多大....没必要自己造轮子 02/18 09:45
3F:→ superpai:原来如此 我还没有自己写function来new过 来试试看 02/18 11:01
4F:→ mrbigmouth:写function来new是最基本的javascript物件导向方式 02/18 11:20
5F:→ mrbigmouth:最好要对prototype有所理解才能写出有效率的程式 02/18 11:21
6F:→ mrbigmouth:(与其说最基本....不如说是最原始的方式) 02/18 11:22
7F:→ mrbigmouth:还有...工厂函式最後也能有回传值..而且可以以回传物件 02/18 11:23
8F:→ mrbigmouth:的方式取代原本回传this的方式,这样就可以制做出不用 02/18 11:24
9F:→ mrbigmouth:new也能生效的工厂函式... 02/18 11:24
10F:→ mrbigmouth:我是指能用card = new Card(), 也能直接card = Card() 02/18 11:25
11F:→ mrbigmouth:反正这方面资料很多应该可以自己找啦........(缩) 02/18 11:25
12F:→ superpai:感谢指点和范例,我成功了 02/18 21:58