use*_*418 14 javascript jquery backbone.js
我正在阅读一些骨干教程,我有一个普遍的jQuery问题,我实际上已经想了一段时间.
有时我会在jQuery选择器中看到带有第二个参数的调用$('ul', this.el)
.
选择器中第二个参数的目的是什么?我并不是在任何骨干示例的上下文中,一般来说,在选择器中传递第二个参数的目的是什么,为什么它总是传递给那里的对象?我找不到任何关于此的文件.
use*_*716 14
含义与:
$(this.el).find('ul')
Run Code Online (Sandbox Code Playgroud)
在内部,经过一系列的测试,jQuery发现它需要将它翻转到上面的.find()
调用,所以它会这样做,然后重新开始.
因此,将上下文作为第二个参数提供只是一种较慢的方法.find()
.
// HANDLE: $(expr, context)
// (which is just equivalent to: $(context).find(expr)
} else {
return this.constructor( context ).find( selector );
}
Run Code Online (Sandbox Code Playgroud)
...这里this.constructor
是$
功能,context
是你的第二个参数,selector
是你的第一个参数.