BLOG
Enjoy when you can, and endure when you must.
NOV 05, 2012/jQuery
学习笔记:jQuery定制选择符

在jQuery中使用选择符表达式查找元素的时候,jQuery会在一个内部的映射expr中取得JavaScript代码。当且仅当取得的函数返回true的情况下,才会让每个元素包含在结果集中。
   

使用$.extend()函数可以为这个映射添加新的表达式。

$.extend($.expr[':'], {
        group: function(element, index, matches, set) {
            var num = parseInt(matches[3], 10);
            if (isNaN(num)) {
                return false;
            }
            return index % (num * 2) < num;
        }
    });
})(jQuery);

以上代码告诉jQuery:group是一个有效的字符串,可以放在一个冒号的后面构成选择符表达式。

这个被求职的函数接收4个参数:

elements:当前考虑的DOM元素;

index:DOM元素在结果集中的索引;

matches:包含用于解析这个选择符的正则表达式的解析结果。其中最有用的是matches[3],其为调用函数时传入的文本。

set:匹配到当前元素的整个DOM元素集合。


( 摘自《Learning jQuery》(Third Edition) )

COMMENTS
LEAVE COMMNT