【发布时间】:2010-12-31 21:33:22
【问题描述】:
假设有一个对象,作为参数传递给函数。参数名称是“obj”。 可以按如下方式串联吗?
$(obj + " .className")......
或
$(obj + "[name='obj_name'])......
谢谢。
【问题讨论】:
标签: jquery string object css-selectors concatenation
假设有一个对象,作为参数传递给函数。参数名称是“obj”。 可以按如下方式串联吗?
$(obj + " .className")......
或
$(obj + "[name='obj_name'])......
谢谢。
【问题讨论】:
标签: jquery string object css-selectors concatenation
不可以,但是可以使用filter()方法过滤掉对象本身:
$(obj).filter('.className')...
$(obj).filter('[name=obj_name]')...
或者,如果您想找到具有这些品质的孩子:
$(obj).find('.className')...
$(obj).find('[name=obj_name]')...
或者,find 的替代语法,将obj 作为$() 函数的上下文:
$('.className', obj)...
$('[name=obj_name]', obj)...
【讨论】:
$(obj.tagName + " .className")
【讨论】:
选择器的第二个参数是上下文:
$(".className", obj).each(...);
这会将所有匹配项限制为obj。所以假设obj 是对div.parent 的引用:
<div class="parent">
<p class="className">I'll be found</p>
</div>
<p class="className">I will NOT be found</p>
【讨论】: