제이쿼리 질문입니다.

제이쿼리 질문입니다.

QA

제이쿼리 질문입니다.

본문

a링크의 onclick를 사용하다가 궁금한점이 생겨서요.

스크립트내에서 함수선언을 한것은 잘되는데

 

제이쿼리의 $(function() {})를 써서 안에서 함수 선언한것은 정의되지 않았다고 하는데

이해가 안됩니다.

 

기본적으로 제가 알고있는 지식으로는

$(function() {}) 은 html 랜더링 시에 dom이 완전히 생성된 후에 실행이 되는걸로 알고있는데

그렇다면 a가 생성된 후인데 왜 onclick는 안먹는지 이해가 되지를 않습니다.

 

 

 


<a href='#' onclick="test();">............</a>
 
<script>
function test() {
 console.log(1); // 잘됨
}
 
$(function() {
   function test() {
     console.log(1);  //  에러 :: test is not defined
   }
});
</script>

 

이 질문에 댓글 쓰기 :

답변 2

다음 처럼 해 보시죠.

<script>
$(function() {
   this.test = function() {
     console.log(1);  //  에러 :: test is not defined
   }
});
</script>

$(......)<---이것도 하나의 함수 입니다

함수내에 선언된 함수를 바로 호출할 수 없습니다

함수내에 전역변수처럼 함수변수를 하나 만들어주면 됩니다

$(function(){

  function mytest(){

      ~~~~~~~

  }

 test = mytest;

});

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 2,660
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT