Backbone.js学习之初识hello-world
说了好久好久要学习Backbone.js,现在终于下定决心开始学习了。然后呢,就根据我的学习进度在这里做个简单的记录,方便新人,也方便我自己以后回忆。
准备
用bower下载这几个库或框架也是醉了。。。由于使用的红杏只能在浏览器上使用,所以在GFW的协同之下真是下载得相当龟速啊!
jquery(或者zepto),underscore.js,backbone.js终于下载完成,成功引入之后。开始从网上扒helloworld了。。。。不要吐槽我,我就喜欢在学习之前先来个整体的demo看看。
然后我就扒到了https://github.com/the5fire/backbonejs-learning-note这里面的一个 demo。。。另外,这个系列的基本例子都是取自这里,PS:这位仁兄写得不错。当然,我会结合官方文档以及自己的倒腾做出一些改变
代码
(function ($) {
World = Backbone.Model.extend({
//创建一个World的对象,拥有name 和 age属性
defaults: {
name:'Moyi',
length: null
}
});
Worlds = Backbone.Collection.extend({
// World对象的集合
initialize: function(models, options){
this.bind("add", options.view.addOneWorld);
}
});
AppView = Backbone.View.extend({
el: $("body"),
initialize: function(){
this.worlds = new Worlds(null, { view : this })
},
events: {
"click #check": "checkIn",
"mouseover .hehe": "checkIn"
},
checkIn: function(e){
var world_name = prompt("请问,您是哪星人?");
if (world_name == "") {
world_name = '未知'
};
var world = new World({
name: world_name,
length: world_name.length
});
this.worlds.add(world);
},
addOneWorld: function(model){
$("#world-list").append("<li>这里是来自<b>" + model.get("name") +"("+ model.get("length") + ")</b>星球的问候!</li>");
}
});
var appview = new AppView;
})(jQuery);
解释一下某些东西
view里面的events:
官方文档是这么说的:
A view that displays a document in a search result might look something like this:
var DocumentView = Backbone.View.extend({
events: {
"dblclick" : "open",
"click .icon.doc" : "select",
"contextmenu .icon.doc" : "showMenu",
"click .show_notes" : "toggleNotes",
"click .title .lock" : "editAccessLevel",
"mouseover .title .date" : "showTooltip"
},
render: function() {
this.$el.html(this.template(this.model.attributes));
return this;
},
open: function() {
window.open(this.model.get("viewer_url"));
},
select: function() {
this.model.set({selected: true});
}
});
我私以为呢,这里列出来的event都是熟悉的,好像hover事件就没有,不过好在可以使用mousein,mouseout来模拟。
其他
本系列的一些文章纯属自己学习的时候做的记录。我相信会有极大一部分是不正确的,或者是我主观想法。若是看客,尽管批评指正,小弟感激不尽。另外,文章中的一些观点,还请自行查阅相关文档。
Backbone.js学习之初识hello-world的更多相关文章
- 【转】Backbone.js学习笔记(二)细说MVC
文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Bac ...
- Backbone.js学习之二
经历一段自我修炼,终于领悟到Backbone.js的关键知识点,也发现了原来MVC可以在前端这样梦幻的发挥,Backbone.js确实是一个很有魅力的前端MVC框架. 练就一门技术,需要有扎实的功底, ...
- Backbone.js学习之一
昨天一个我崇拜的朋友,徐飞送我一本名为<Backbone.js实战>书,让我心中狂喜,于是带着这份浓厚的兴趣,开始研究Backbone.js之路. 打开这本书的第一句话就很有哲理,“授人以 ...
- backbone.js学习笔记
之前只接触过jQuery,看来Backbone是除了jQuery的第二大JS框架... backbone到底是个啥? 其实刚开始我也不知道=_=,我是这周二才听说居然还有这么个框架...于是乎我的导师 ...
- 【转】Backbone.js学习笔记(一)
文章转自: http://segmentfault.com/a/1190000002386651 基本概念 前言 昨天开始学Backbone.js,写篇笔记记录一下吧,一直对MVC模式挺好奇的,也对j ...
- Backbone.js学习之Backbone.View(视图)
Backbone.js为复杂WEB应用程序提供模型(models).集合(collections).视图(views)的结构.其中模型用于绑定键值数据和自定义事件:集合附有可枚举函数的丰富API: 视 ...
- Backbone.js学习之View
千呼万唤始出来,终于到最后一个要点View了.照旧,先来一睹官方文档: Backbone views are almost more convention than they are code - t ...
- Backbone.js学习之旅(一)
前言 刚到粑粑公司,就学习各种框架,进行各种开发,为了纪念挥泪的青春,只好写下…… 希望能合您胃口^_^!!! The First(文件准备) backobone 强制依赖于 underscore.j ...
- Backbone.js学习之Collection
首先,当然是一如既往地看官方文档的解释. Collections are ordered sets of models. 翻译: Collections是models的一个集合. 关于book和boo ...
随机推荐
- 学习JQuery中文文档之index()函数
最初认识index()是在轮播图中,获取当前点击对象在数组中的位置.那时候,对index()的使用只有eq($(this).index()),看了文档之后,才知道自己有多幼稚! <!DOCTYP ...
- Objective-C运行时编程 - 实现自动化description方法的思路及代码示例
发布自米高 | Michael - 博客园,源地址:http://www.cnblogs.com/michaellfx/p/4232205.html,转载请注明. 本文结构 基础实现 性能优化 参考 ...
- udt nat traverse
https://github.com/bakwc/udt-nat-traverse Example of nat traversal using udt library. UDT is a udp b ...
- AVR 定点数运算程序设计及数制转换
AVR 单片机有加法和减法指令,可以直接调用相关指令来达到目的. 这里列出了16位加法.16位带立即数加法. 16位减法.16位带立即数减法. 16位比较.16位带立即数比较程序和16位取补程序. a ...
- jackson 解析json问题
1.json串中有key为A,但指定转换的mybean中未定义属性A,会抛异常.处理:mapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, fals ...
- Codeforces Gym 100531G Grave 水题
Problem G. Grave 题目连接: http://codeforces.com/gym/100531/attachments Description Gerard develops a Ha ...
- C#中的ICollection接口
一.集合类: 1.1 ICollection接口 前面我们学习了数组,这是.net Framework定义的最基本的集合类型,除过数组外,.net Framework还另外定义了很多集合类型以满足编程 ...
- C#中简单调用MD5方法以及MD5简介
MD5简介: MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2.M ...
- 初次接触CodeSmith
说到开发效率的提高,代码生成器肯定是其中必不可少的重点.说到代码生成器,鼎鼎大名CodeSmith肯定是如雷贯耳. CodeSmith最大的特点是能够自定义模板(通俗的说就是想生成什么样就可以生成什么 ...
- CentOS 7 ibus 导入第三方词库
CentOS 7 自带的输入法是ibus默认有带拼音输入法“Intelligent Pinyin 1.6.91“,但是在使用过程中发现很多词汇没有.所以就想捣鼓一下,怎么把像搜狗或者其他输入法的数据库 ...