2016-07-02 8 views
2

이 jQuery 코드는 페이지의 모든 주석 요소를 가져 오려고하지만 브라우저 콘솔에서 실행할 때 오류를 반환합니다.jQuery 내용이 함수가 아닙니다.

TypeError: $(...).contents is not a function

페이지의 모든 메모 노드를 얻으려면 어떻게해야합니까? Thankx

$("*").contents().filter(function() { 
    return this.nodeType == 8; 
}) 
+0

당신은 HTML을 게시 할 수 있습니까? – PrinceG

+0

contains 함수에는 매개 변수가 있어야합니다. –

+1

스크립트를 실행하려는 웹 페이지에 jquery lib가 있습니까? 활성 웹 페이지의 jquery 가용성에 의존하는 브라우저 콘솔에서 스크립트를 실행한다고 말했기 때문에 질문합니다. –

답변

2

Ithink $ 그렇게 jQuery 대신 $를 사용하여 페이지에서 다른 라이브러리를 참조. 또한 jQuery 라이브러리가 페이지의 코드 앞에 포함되어 있는지 확인하십시오.

jQuery("*").contents().filter(function() { 
    return this.nodeType == 8; 
}) 

또는

(function($){ 
    $("*").contents().filter(function() { 
     return this.nodeType == 8; 
    }) 
})(jQuery); 

또는

jQuery(function($){ 
    $("*").contents().filter(function() { 
     return this.nodeType == 8; 
    }) 
}) 

더 여기 읽기 기능 내부의 $jQuery로를 얻기 위해 클로저를 사용 Avoiding Conflicts with Other Libraries


또한 코드를 document ready handler으로 감싸는 것을 잊지 마십시오.

+0

페이지로드도 기다려야합니다. –

+0

@IsmailRBOUH : 사실이지만 오류가 발생하지 않습니다. –

관련 문제