2010-03-18 91 views
1
 1. jQuery.expr[':'].aFilter = 
     function(elem, index, match){ 

       return true; // Return true/false as per need 

     }; 

     $('div.red').filter(':aFilter').doSomething(); 

我想通過一些自定義參數「jQuery.expr [‘:’]。aFilter」功能,是有可能做到這一點參數傳遞給自定義過濾器在jQuery的FN

+0

你到底在問什麼? – karim79 2010-03-18 18:17:00

+0

我想將一些自定義參數傳遞給「jQuery.expr [':']。aFilter」函數,是否可以做到這一點 – 2010-03-18 18:25:27

回答

2

在你的情況,如果有人did $('div.red').filter(':aFilter(textHere)')你可以在你的函數中使用match[3]來按你想要的textHere字符串進行操作。

下面是我使用的情況下,insentitive一個例子包含搜索:

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

的使用方法是:$(":Contains(Text To Match)");
在這種情況下m[3](「文本相匹配」)是通過PARAM我計較。

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

+0

我一直在尋找這樣的東西, 我認爲我們不能傳遞一個對象來過濾fn第三參與者 這個代碼仍然解決了我的問題thanx。 – 2010-03-18 18:53:48

相關問題