我能以某种方式告诉jQ这样的事情:
var $foo = $('#parent #child');
var $boo = $($foo '#grandChild');
可以$ boo找到$ foo的孩子吗?
答案 0 :(得分:2)
如果您已经拥有:
var $foo = $('#parent #child');
你可以这样做:
var $boo = $foo.find("#grandChild")
或者这个:
var $boo = $("#grandChild", $foo);
jQuery函数的第二个参数是一个可选的上下文,它将搜索范围限定为该层次结构。
对于与选择器匹配的元素,这两个选项中的任何一个都只会查看$foo
的后代。我通常更喜欢.find()
语法,因为我认为它使得更易读的代码更加明显,并且更容易从左到右读取。
如果你只想搜索直接的孩子(不是更深的后代),你也可以这样做:
var $boo = $foo.children("#grandChild")
如果你真的在寻找一个id,我会想知道你为什么要这么做,因为id应该在整个文档中是唯一的
var $boo = $("#grandChild")
如果它是一个id,应该有效,除非你想知道给定的id是否只在页面的给定层次结构中。