jQuery“存在”函数与回调

时间:2011-12-22 16:48:31

标签: callback jquery-callback jquery

扩展:https://stackoverflow.com/a/31047/235633

有没有办法可以扩展这个自定义jQuery函数来使用回调?基本上我希望能够有一个选择器列表并检测它们的存在,如果它们存在,我需要显示它们。

我宁愿编写一个使用回调和'this'的函数,而不是编写一千个if语句。

该家伙写道:

jQuery.fn.exists = function(){return this.length>0;}

if ($(selector).exists()) {
    // Do something
}

但我需要:

$('.selector1, .selector2, .selector3').exists(function({
    $(this).show();
});

3 个答案:

答案 0 :(得分:3)

jQuery将为您循环遍历它们。

$('.selector1, .selector2, .selector3').show();

应该按预期工作。

答案 1 :(得分:3)

所以基本上,你想展示那些存在的?那你不需要:)

$('.selector1, .selector2, .selector3').show();

答案 2 :(得分:0)

在一般情况下,您可以使用.each

$('.selector1, .selector2, .selector3').each(function({
  //some work involving $(this) 
});

但在这种情况下,show无论如何都适用于所有匹配的元素:

$('.selector1, .selector2, .selector3').show();