首先,请原谅我编程能力低,问一些事情你可能会发现很明显。我自己学习,没有比这样的在线书籍和网站更多的帮助。
我正在阅读著名的A. Osmani的“开发骨干应用程序”,试图理解和不让事情泄露出去。
我对以下几点表示怀疑:
(这是视图介绍( http://addyosmani.github.io/backbone-fundamentals/#application-view)的一部分)
initialize: function() {
this.allCheckbox = this.$('#toggle-all')[0];
this.$input = this.$('#new-todo');
this.$footer = this.$('#footer');
this.$main = this.$('#main');"this.allCheckbox“、"$input”、"$footer“和"$main”是什么?他是否选择了已经存在的元素?给他们下定义?为什么'allCheckbox‘不像其他人一样以'$’开头?
谢谢你的帮助。
发布于 2014-04-10 17:25:25
$前缀变量通常是指jQuery对象(如您所见,他选择DOM节点来分配这些变量)。那只是个惯例。
this.$()方法运行范围为jQuery的选择。它在视图$el元素中查找查询的匹配项。这比搜索整个页面要快一些。他确实在选择已经存在的元素,在这个视图的$el中。
allCheckbox没有$前缀,因为通过在jQuery对象数组上使用[0],实际上返回的是原始DOM节点,而不是jQuery对象。使用这样的变量命名可以帮助您在非类型化语言中很好地了解该变量上可能存在哪些方法。
https://stackoverflow.com/questions/22994737
复制相似问题