骨干基础
Backbone basics
首先,请原谅我编程技能低下,问一些你可能会发现显而易见的问题。我自己学习,没有比在线书籍和类似网站更多的帮助。
我正在阅读著名的A.Osmani的《开发骨干应用程序》,试图理解并避免泄露信息。
我对以下几点有疑问:
(这是观点介绍的一部分,http://addyosmani.github.io/backbone-fundamentals/#application-视图)
initialize: function() {
this.allCheckbox = this.$('#toggle-all')[0];
this.$input = this.$('#new-todo');
this.$footer = this.$('#footer');
this.$main = this.$('#main');
什么是"this.allCheckbox"、"$input"、"$页脚"answers"$main"?。。。他是在选择已经存在的元素吗?定义它们?为什么"allCheckbox"不像其他复选框那样以"$"开头?
谢谢你的帮助。
前缀为$
的变量通常指代jQuery对象(正如您所看到的,他正在选择要分配给这些变量的DOM节点。这只是一种惯例。
this.$()
方法运行一个作用域的jQuery选择。它在视图$el
元素内部查找查询的匹配项。这比搜索整个页面要快一点。他实际上是在选择这个视图的$el
中已经存在的元素。
allCheckbox
没有前缀$
,因为在jQuery对象数组上使用[0]
,实际上此时返回的是原始DOM节点,而不是jQuery对象。使用这样的变量命名可以帮助您在非类型化语言中了解该变量上可能存在的方法。
相关文章:
- 没有找到相关文章