50行代码仿backbone_todos
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>模仿TODOS,写了一个todos</title>
<script src="../3.20/jquery.js"></script>
<script src="../3.20/underscore-1.1.6.js"></script>
<script src="../3.20/backbone.js"></script>
</head>
<body>
<div id="app">
<ul id="contain"> </ul>
<a href="###" class="delAll">dsdfelAll</a>
<a href="###" class="addDefault">addDefault</a>
</div>
<script type="text/template" id="personTpl">
<li>
<span><%=name%></span>
<b><%=age%></b>
<button>del</button>
<a>add</a>
</li>
</script>
</body>
<script>
var M = Backbone.Model.extend({
defaults : {
name : "qihao",
age : 27
}
});
var C = Backbone.Collection.extend({
model : M
});
var c = new C; var V1 = Backbone.View.extend({
tagName : "li",
initialize : function(){
},
events : {
"click button" : "destory",
"click a" : "addOne"
},
tpl : _.template( $("#personTpl").html() ),
render : function(){
$(this.el).html( this.tpl( this.model.toJSON() ) )
return this;
},
destory : function(){
c.remove(this.model)
},
addOne : function(){
var name = prompt("name");
var age = prompt("age");
c.add(new M({name : name ,age : age}));
}
});
var V2 = Backbone.View.extend({
el : $("#app"),
events : {
"click .delAll" : "delAll",
"click .addDefault" : "addDefault"
},
initialize : function(){
this.c = c;
//数据模型的绑定this,要这样用才行;
c.bind("all",this.renderAll,this)
},
renderAll : function(){
this.el.find("#contain").html(" ");
var _this = this;
this.c.each(function(m){
_this.renderSingal(m)
});
},
renderSingal : function(m){
this.el.find("#contain").append( (new V1({model : m})).render().el )
},
delAll : function(){
this.el.find("#contain").html(" ");
},
addDefault : function(){
this.renderSingal( new M )
}
}); c.add( new M({name : "a", age : 2}) );
c.add( new M());
var v2 = new V2()
v2.renderAll()
</script>
</html>
50行代码仿backbone_todos的更多相关文章
- python爬虫实战:利用scrapy,短短50行代码下载整站短视频
近日,有朋友向我求助一件小事儿,他在一个短视频app上看到一个好玩儿的段子,想下载下来,可死活找不到下载的方法.这忙我得帮,少不得就抓包分析了一下这个app,找到了视频的下载链接,帮他解决了这个小问题 ...
- 50行代码实现python计算器主要功能
实现功能:计算带有括号和四则运算的式子 3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 基本思路:使用正则表达式提取出每一层 ...
- 50行代码实现缓存,JAVA内存模型原理
遇见这样的高人怎么办??下面是一个简单缓存的实现,相当牛叉!自己看吧,只有50行代码. 摘自:http://www.oschina.net/code/snippet_55577_3887 import ...
- HTML5游戏实战(1):50行代码实现正面跑酷游戏
前段时间看到一个"熊来了"的HTML5跑酷游戏,它是一个典型的正面2D跑酷游戏,这里借用它来介绍一下用Gamebuilder+CanTK开发正面跑酷游戏的基本方法. CanTK(C ...
- 50行代码实现GAN | 干货演练
2014年,Ian Goodfellow和他的同事发表了一篇论文,向世界介绍了生成对抗网络(GAN).通过对计算图和博弈论的创新性组合,他们表明如果有足够的建模能力,两个相互对抗的模型可以通过普通的反 ...
- 基于requirejs+bluebird,50行代码实现轻巧实用的前端CMD加载器
首先是github地址,可以用git克隆命令也可以直接在git页面下载 https://github.com/kazetotori/js-requireAsync 下载下来后目录结构是这样的 -pac ...
- [Lua]50行代码的解释器,用来演示lambda calculus
嗯,来写写经过: 在知乎上看见用Belleve牛用javascript写了一个精简的lisp解释器 => 我也想写一个,用lua写,能多简单呢? => 写了一个阉割的scheme解释器,包 ...
- OpenCV图像识别初探-50行代码教机器玩2D游戏【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- 50行代码实现的高性能动画定时器 raf-interval
写在前面 raf-interval 是基于 window.requestAnimationFrame() 封装的定时器. Github: https://github.com/dntzhang/raf ...
随机推荐
- Quicksum-S.B.S.
quicksum Queation: Given a string of digits, find the minimum number of additions required for the s ...
- Medial Queries的另一用法:实现IE hack的方法
所谓Medial Queries就是媒体查询. 随着Responsive设计的流行,Medial Queries可算是越来越让人观注了.他可以让Web前端工程实现不同设备下的样式选择,让站点在不同的设 ...
- [C#] 委托之Action和Func区别
一.说明 一般我们定义委托都是有如下两步: public delegate void MyDelegate(string name);//定义委托 public MyDelegate myDelega ...
- 关联:objc_getAssociatedObject和objc_setAssociatedObject使用
为UIButton的category添加属性 UIButton+subTitle.h #import <UIKit/UIKit.h> #import <objc/runtime.h& ...
- S2--《优化MySchool数据库设计》总结
第一章 数据库的设计 1.1 数据库设计 数据库中创建的数据库结构的种类,以及在数据实体之间建立的复杂关系是决定数据库系统效率的重要因素. 糟糕的数据库设计表现在以下两个方面: *效率低下 * ...
- SEO在网页制作中的应用
1.什么是SEOSEO(Search Engine Optimization)中文意译为“搜索引擎优化”.SEO是指通过网站内部调整优化及站外优化,使网站满足搜索引擎收录排名需求,在搜索引擎中提高关键 ...
- MySQL基础 - 编码设置
刚开始工作的时候,在工作中遇到的与数据库相关的问题,多半跟编码有关,总结一下数据库编码的设置. 字符集 查看数据库支持的字符集: mysql> SHOW CHARACTER SET; 从图中可以 ...
- Nginx学习记录
本人刚刚接触Nginx,对这个强大的服务器还没有充分的了解,现在在这里对我在使用Nginx的过程中碰到的一些问题做些总结! 1.ssi配置问题 这里我贴上我的nginx.conf配置文件中server ...
- [CareerCup] 9.6 Generate Parentheses 生成括号
9.6 Implement an algorithm to print all valid (e.g., properly opened and closed) combinations of n-p ...
- 系统级I/O学习记录
重要知识点 输入/输出(I/O) I/O是主存和外部设备(如磁盘驱动器.终端和网络)之间拷贝数据的过程. 输入操作是从I/O设备拷贝数据到主存. 输出操作是从主存拷贝到I/O设备. Unix I/O ...