복붙노트

[JQUERY] 어떻게 jQuery를 jQuery를 1.8 이상을 포함하여, 사례를 구분을 포함해야합니까?

JQUERY

어떻게 jQuery를 jQuery를 1.8 이상을 포함하여, 사례를 구분을 포함해야합니까?

해결법


  1. 1.이것은 어떤 문제가 없었어요 내가 현재 프로젝트에 사용하고있다. 이 형식과 더 나은 운이 있는지 확인 :

    이것은 어떤 문제가 없었어요 내가 현재 프로젝트에 사용하고있다. 이 형식과 더 나은 운이 있는지 확인 :

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

    jQuery를 1.8이이 변경을위한 API,이의 jQuery를 1.8 이상 버전은 다음과 같습니다

    jQuery.expr[":"].Contains = jQuery.expr.createPseudo(function(arg) {
        return function( elem ) {
            return jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
        };
    });
    

    당신은 여기를 테스트 할 수 있습니다. 1.8 이상 사용자 정의 선택기에 대한 상세 내용은 여기에 지글 지글 위키를 확인하시기 바랍니다.


  2. 2.대답은 정확하지만 커버이라고 지적 그것의 가치는 : 포함, 그리고 별칭을 : 예기치 않은 동작이 발생할 수 있습니다 (또는 둘 다 민감하고 문자를 구분 검색을 요구하는 고급 애플리케이션을위한 설계가 사용할 수있는)하는이 포함되어 있습니다.

    대답은 정확하지만 커버이라고 지적 그것의 가치는 : 포함, 그리고 별칭을 : 예기치 않은 동작이 발생할 수 있습니다 (또는 둘 다 민감하고 문자를 구분 검색을 요구하는 고급 애플리케이션을위한 설계가 사용할 수있는)하는이 포함되어 있습니다.

    이것은 별명에 대한 확장을 복제하여 해결 될 수있다 :

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

    나를 위해 작동하지 않는 이유 일 걸 렸어요.


  3. 3.나는 이런 식으로 뭔가를 할 것

    나는 이런 식으로 뭔가를 할 것

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

    그리고 휴가는 : 혼자가 들어 ...

    데모

    왜 jQuery를 그것의 라이브러리를 지원하지 않습니다! 그것은 쉬운 경우 ...

    코드가 칠면조 코드를 통과 않기 때문에?


  4. 4.늦을 수 있습니다 ....하지만,

    늦을 수 있습니다 ....하지만,

    나는이 길을 갈 선호하는 것 ..

    $.extend($.expr[":"], {
    "MyCaseInsensitiveContains": function(elem, i, match, array) {
    return (elem.textContent || elem.innerText || "").toLowerCase().indexOf((match[3] || "").toLowerCase()) >= 0;
    }
    });
    

    이런 식으로, 당신은 당신이 무단으로 변경하는 경우 기본 하나 나중에 ... 다시 유래에 자신을 찾을 수 있습니다해야 할 수도 있습니다 ... jQuery의 NATIVE '.contains'하지 변조 DO ...


  5. 5.나는 나 자신이 내 친구를 추가 할 수 있습니다 :

    나는 나 자신이 내 친구를 추가 할 수 있습니다 :

    $.expr[":"].containsNoCase = function (el, i, m) { 
        var search = m[3]; 
        if (!search) return false; 
        return eval("/" + search + "/i").test($(el).text()); 
    }; 
    

  6. 6.난 그냥 코드 아래 사용하여 원하는 것을 달성하기 위해 모두 jQuery의 대소 문자 구분을 무시 할 수 있었다 :

    난 그냥 코드 아래 사용하여 원하는 것을 달성하기 위해 모두 jQuery의 대소 문자 구분을 무시 할 수 있었다 :

                $.expr[":"].contains = $.expr.createPseudo(function(arg) {
                return function( elem ) {
                    return $(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
                };
            });
    

    당신은 코드 대소 문자 구분을 무시하도록 jQuery를 버전을 기반으로 찾으려면이 링크를 사용할 수 있습니다, https://css-tricks.com/snippets/jquery/make-jquery-contains-case-insensitive/

    또한 사용하려는 경우 : http://technarco.com/jquery/using-jquery-search-html-text-and-show-or-hide- : 당신이보고 싶을 수도 포함하고 일부 검색을 따라서

  7. from https://stackoverflow.com/questions/2196641/how-do-i-make-jquery-contains-case-insensitive-including-jquery-1-8 by cc-by-sa and MIT license