2012-05-15 30 views
1

我有些函数声明像这样的检查元素的东西(真,假):jQuery的传递从选择器功能的每个元素,使阵列选择最后一个元素

(function($) { 
$.myfunc = function(element, settings) { 
    // skiped return comparison 
}; 

})(jQuery); 

然后我想使用此功能作为附加选择器。我想有时候是这样的(当然它的错误代码):

var lastprl = $("a[prl]").filter(function() { $.myfunc($(this), {param : 0}) }).last(); 

似乎主要思路是正确的与我的功能来过滤元素,然后选择从阵列.last()。请帮助修复此代码。也许我错误地使用$.myfunc电话?或者是其他东西?

回答

4

.filter()需要您提供的函数的返回值。您的return丢失。

.filter(function() { return $.myfunc($(this), {param : 0}) }) 
     // ------------^^^ 

还要确保$.myfunc返回布尔结果。