代码之家  ›  专栏  ›  技术社区  ›  Praveen Prasad

在jquery中将参数传递给自定义筛选器fn

  •  1
  • Praveen Prasad  · 技术社区  · 14 年前
         1. jQuery.expr[':'].aFilter =
            function(elem, index, match){
    
                    return true; // Return true/false as per need
    
            };
    
            $('div.red').filter(':aFilter').doSomething();
    

    我想将一些自定义参数传递给“jquery.expr[':'].afilter”函数,是否可以这样做?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Community Vlad V    7 年前

    就你而言,如果有人 $('div.red').filter(':aFilter(textHere)') 你会用 match[3] 在你的职责范围内做你想做的 textHere 字符串。

    以下是我用于案例插入式包含搜索的示例:

    jQuery.expr[':'].Contains = function(a, i, m) { 
        return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; 
    };
    

    其用途是: $(":Contains(Text To Match)");
    在这种情况下 m[3] (“要匹配的文本”)是我关心的传递参数。

    You can find a full list of the parameters in this answer.