使用情景区别

listenTo用于监听自身意外的对象

on用于监听自身

listenTo和on中的回调函数里的this的区别

listener.listenTo(object, 'eventName', function(){

    //此处的this指向listener

})

object.on('eventName', function(){

    //此处的this指向object

})

object.on('eventName', function(){

    //此处的this指向context

}, context)

触发顺序

当存在同名事件时,会按定义顺序执行,on和listenTo定义的事件会处在同一队列中

若监听了all事件,则触发任意事件都将会在执行完相应回调后执行all事件的回调,  all事件的监听会传递一个参数,该参数为事件名字

demo

                var a = {type: "I'm listening"}, b = {type: "I'm listened"};
_.extend(a, Backbone.Events);
_.extend(b, Backbone.Events);
b.on('onNoContext', function(){
console.log('trigger onNoContext');
console.log(this.type);
});
b.on('onContext', function(){
console.log('trigger onContext');
console.log(this.type);
}, a);
a.listenTo(b, 'listened', function(){
console.log('trigger listened');
console.log(this.type);
});
b.on('all', function(){
console.log('trigger on all');
});
a.listenTo(b,'all', function(){
console.log('trigger listen all');
}); console.log('###b.trigger("all")###');
b.trigger('all');
console.log('###b.trigger("onNoContext")###');
b.trigger('onNoContext');
console.log('###b.trigger("onContext")###');
b.trigger('onContext');
console.log('###b.trigger("listened")###');
b.trigger('listened');

运行结果:

1  ###b.trigger("all")###
2 trigger on all
3 trigger listen all
4 trigger on all
5 trigger listen all
6 ###b.trigger("onNoContext")###
7 trigger onNoContext
8 I'm listened
9 trigger on all
10 trigger listen all
11 ###b.trigger("onContext")###
12 trigger onContext
13 I'm listening
14 trigger on all
15 trigger listen all
16 ###b.trigger("listened")###
17 trigger listened
18 I'm listening
19 trigger on all
20 trigger listen all

Backbone的 listenTo 和 on的更多相关文章

  1. Backbone事件模块及其用法

    事件模块Backbone.Events在Backbone中占有十分重要的位置,其他模块Model,Collection,View所有事件模块都依赖它.通过继承Events的方法来实现事件的管理,可以说 ...

  2. 【转】Backbone使用总结

    转自  http://www.pchou.info/javascript/2014/06/26/backbone-summary-01.html 开始在项目中大规模使用backbone,一路磕磕碰碰, ...

  3. Backbone学习记录(1)

    去年买的<基于MVC的javascript Web富应用开发>,拖到现在还没看完,作者介绍了三个MVC框架,Spine ,backbone和javascriptMVC.1和2在国内的流行度 ...

  4. listenTo - backbone.js

    listenToobject.listenTo(other, event, callback) 让 object 监听 另一个(other)对象上的一个特定事件.不使用other.on(event, ...

  5. 我对Backbone.js的一些认识

    backbone.js已经不是当前最流行的前端框架了,但是对于我而言,依然具有比较好的学习价值.虽然目前来说,react,vue等mvvm框架非常火热,但是感觉自身还不到去使用这种框架的层次.这些技术 ...

  6. backbone学习总结(二)

    今天来看下backbone的路由控制的功能.其实个人感觉backbone,模块就那么几个,熟悉它的框架结构,以及组成,就差不多. 废话不多说,我们来看看还剩下的功能. 关于路由和历史管理 通过 Bac ...

  7. Backbone 学习笔记

    Backbone 是一款基于模型-视图-控制器 MVC 模式的轻量级javascript 框架 ,可以用来帮助开发人员创建单页Web应用. 借助Backbone 我们可以使用REST的方式来最小化客户 ...

  8. Backbone源码阅读手记

    Backbone.js是前端的MVC框架,它通过提供模型Models.集合Collection.视图Veiew赋予了Web应用程序分层结构.从源码中可以知道,Backbone主要分了以下几个模块: ( ...

  9. TodoMVC中的Backbone+MarionetteJS+RequireJS例子源码分析之三 Views

    这个版本的TodoMVC中的视图组织划分比较细,更加易于理解,这也得益于Marionette为我们带来了丰富的视图选择,原生的backbone只有views,而Marionette则有itemview ...

随机推荐

  1. MFC自创建类了解

    CxxxxView 视窗类 所有的按键 等消息都先在这里响应 CxxxxDoc 文档类 CMainFrame 框架类 CxxxxApp 应用程序类 CxxxxView类中的 OnDraw函数 在窗口改 ...

  2. TFT LCD控制显示总结(硬件概念、初始化相关配置)(转)

    源地址:http://nervfzb.blog.163.com/blog/static/314813992011215105432369/ TFT LCD是嵌入式中比较常用的显示器,S3C2440/S ...

  3. 在网上看到一个关于APP的测试

  4. servlet中filter(过滤器)的学习使用

    servlet过滤器是小型的web组件,它能够处理传入的请求和传出的响应.Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理r ...

  5. git操作的各种命令整理

    1.常用的Git命令   命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git ann ...

  6. js 比较日期大小

    //1获取当前时间 var curTime = new Date(); //2把字符串格式转换为日期类 var startTime = new Date(Date.parse(kc.begintime ...

  7. keep out layer PK board shape

    在进行设计pcb时,注意:板边线只能用PLACE LINE画线条,不能画具有电气性能的导线关于边界设置有三种,一.在 keepout layer 定义电气边界.二.design->board s ...

  8. Ubuntu下Qt-4.7.1的静态编译

    最近在学习Qt的静态编译,相比较来说windows的Qt静态编译比较容易,相反对于linux编译网上的文章实践下来都有这样那样的错误,这里简要小结一下自己的编译成果. 一.实验环境 1.Ubuntu  ...

  9. 【转】Android中Spinner下拉列表(使用ArrayAdapter和自定义Adapter实现)

    原文网址:http://embed.21ic.com/software/android/201403/31603.html 1 :Android中Spinner下拉列表(使用ArrayAdapter和 ...

  10. java类的加载顺序

    related URL: http://www.cnblogs.com/guoyuqiangf8/archive/2012/10/31/2748909.html Parent Class: packa ...