在this question,下面的代码用于 -为什么这个jQuery选择器工作?它基于什么?
var parent = $("#jcontent");
var button1 = $(".button1", parent) ;
到ID jcontent
的父内选择button1
类的按钮。
为什么这样吗?如何将jQuery对象作为参数传递给jQuery选择器,告诉它在该对象中进行选择?有人可以链接到解释此功能的文档吗?
在this question,下面的代码用于 -为什么这个jQuery选择器工作?它基于什么?
var parent = $("#jcontent");
var button1 = $(".button1", parent) ;
到ID jcontent
的父内选择button1
类的按钮。
为什么这样吗?如何将jQuery对象作为参数传递给jQuery选择器,告诉它在该对象中进行选择?有人可以链接到解释此功能的文档吗?
这是core method call的context
参数。
参数被描述为:
DOM元素,文档,或jQuery的如上下文中使用
然后还有其与开始标记的一个部分“选择上下文中,”:
默认情况下,选择器在DOM文档根处开始执行搜索。但是,可以通过对$()函数使用可选的第二个参数来为搜索提供备用上下文。
优秀的答案;谢谢! –
第二个参数是选择器上下文:匹配选择器的DOM元素,文档或jQuery对象。在没有这个参数的情况下,假设文档根目录。
以下声明:
var button1 = $(".button1", parent); // parent = $("#jcontent")
是相同书写**:
var button1 = parent.find(".button1"); // parent = $("#jcontent")
和(在这种情况下)产生的结果相同,这一点:
var button1 = $("#jcontent .button1");
**如上所述here:
在内部,选择器上下文使用.find()方法实现,因此$('span',this)等同于$(this).find('span')。
也是一个很好的答案 - 如果可以的话,会接受两个。谢谢! –
$(“。button1”,parent)'与parent.find('。button1')'实际上是一样的。 – Jasper
我发誓你跟着我:-p保持哈哈! –
我喜欢jQuery Mobile的问题,因为他们的答案很容易偏离标准的JS答案。 – Jasper