潇潇雨雨
最后,我为jQuery1.2所做的是:jQuery.extend(
jQuery.expr[':'], {
Contains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0" });这将扩展jQuery,使其具有一个不区分大小写的:CONSCORE选择器,而:CONSCORE选择器保持不变。编辑:对于jQuery1.3(谢谢@user 95227),您需要jQuery.expr[':'].Contains = function(a,i,m){
return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0;};编辑:显然,通过使用(a.textContent || a.innerText || "")而不是jQuery(a).text()在前面的表达式中,如果速度是一个问题,那么就冒着自己的风险吧。(见@John氏问题)最新编辑:对于jQuery1.8,应该是:jQuery.expr[":"].Contains = jQuery.expr.createPseudo(function(arg) {
return function( elem ) {
return jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
};});