2010-01-08 4 views
3

여기에 무슨 일이 일어나는지 확실하지 않습니다. 나는 같은 존재 내 코드가 있습니다 : "여기에 지글 지글 코드는"전체에 지글 지글의 복사/붙여 넣기입니다내 프로젝트에 Sizzle js를 추가하면 프로젝트가 중단됩니다.

var mycode = { 
    init:function(){ 
     //my code here 
    } 
} 

//sizzle pasted here... 
(function(){ //sizzle code here })(); 

. 지글 거리는 익명의 함수에 포함되어 있으므로 간섭이 무엇인지 잘 모르겠습니다.

이 방식으로 Sizzle을 추가하자마자 "mycode"개체 리터럴의 js가 작동을 멈추고 "mycode is not defined"와 같은 오류가 발생합니다. 이것은 Mac, Firefox 3.5.x 및 Safari 4 Mac의 Chrome에서 발생합니다.

답변

1

코드가 같은 'mycode'객체 결과 후

var mycode = { 
     init:function(){ 
      //my code here 
     } 
    }; 

    //sizzle pasted here... 
    (function(){ /*sizzle code here*/ })(); 

누락 된 세미콜론을해야한다,

var mycode = { init:function() {}}(function(){/*sizzle code here*/ })(); 

오류가 발생합니다.)

+0

전날 Google js 스타일 가이드를 통해 스크롤하고 있었고 여기에 설명 된 것과 정확히 일치하는이 문제를 보았습니다. http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml#Semicolons –

+0

@Dan Manastireanu - 이것은 흔한 실수. JS Newbies가 이러한 문제를 인식 할 수 있도록 'Google 스타일 가이드'에서 다루는 것이 좋습니다. –

+0

매우 도움이 됨 감사합니다. –

0

함수 래퍼에 대한 닫는 괄호를 누락해야한다 :

(function(){ //sizzle code here })(); 
+0

감사합니다. 그건 내 질문에 오류, 불행히도 실제 코드가 아니 었어. – Geuis

관련 문제