jQuery选择器的多个参数?

时间:2010-04-20 01:47:19

标签: jquery

我只是看着jQueryUI按钮插件并注意到了这个

$("button, input:submit, a", ".demo").button();

我从没见过这样的东西。这在一个jQuery选择器中是多次选择吗?

2 个答案:

答案 0 :(得分:156)

第二个参数(在您的示例中为".demo")是 context ,基本上您的选择器仅限于匹配确定的上下文的后代

$(expr, context)

等同于使用find方法:

$(context).find(expr)

查看jQuery function的文档:

  

选择器上下文

     

默认情况下,选择器会执行它们的操作   从DOM开始搜索   文档根目录。但是,一个   可以给出替代上下文   使用可选的秒搜索   $()函数的参数。对于   例如,如果在回调函数内   我们希望搜索一个元素,   我们可以限制搜索:

$('div.foo').click(function() {
  $('span', this).addClass('bar');
  // it will find span elements that are
  // descendants of the clicked element (this)
});

另请注意,您发布"button, input:submit, a"的选择器名为Multiple Selector,您可以指定任意数量的选择器合并为单个结果,只需用逗号分隔即可。

答案 1 :(得分:-1)

实际上要为 jQuery 选择器提供多个不同的参数,只需为选择器提供一个包含所有参数的数组,例如

$([sel1, sel2, sel3, obj1, obj2, obj3]).on("click", function() {
    alert("clicked!");
});