2015-01-29 3 views
-3

휴대 기기에서 페이지를 볼 때 본문에 클래스를 추가하려고합니다. 모바일 탐지가 다운되었지만 어떤 이유로 jQuery는 body 태그에 클래스를 추가하지 않습니다. 나는 왜 그것이 작동하지 않는가에 관해서 난처한 상황에 처해있다. 나는 두 번째로 경고를 얻는다. 그러나 어떤 모바일 학급이 아니라도.jQuery가 본문에 클래스를 추가하지 않음

(function() { 
     var NO_REDIRECT = 'noredirect'; // cookie to prevent redirect 
     // I only want to effect phones 
     if (isMobile.any) { 
       alert('1st') 
       // Only redirect if the user didn't previously choose 
       // to explicitly view the full site. This is validated 
       // by checking if a "noredirect" cookie exists 
       if (document.cookie.indexOf(NO_REDIRECT) === -1) { 
        alert('2nd'); 
        $(document.body).addClass('mobile'); 
       } 
      } 
     })(); 
+1

에 코드를 래핑하는 $(document.body).addClass('mobile');

시도를 실행할 때까지 준비하지 않을 수 있습니다 머리 부분 – adeneo

+0

나를 위해 작동합니다. 문제를 재현하기위한 추가 단계를 제공하십시오. –

+0

자바 스크립트는 페이지에서 구문 분석 될 때 즉시 실행됩니다. 이전 인 경우 아직로드되지 않았으므로 클래스를 추가 할 요소를 찾지 않습니다. 'ready()'함수로 감싸거나 자바 스크립트가 실행될 때 HTML이 페이지에 있도록 이동하십시오. – Schleis

답변

2

귀하의 DOM은 그 코드가있는 경우 당신은 여전히 ​​DOM 준비 처리기가 필요합니다

$(document).ready(function() { 
    // code goes here 
}); 
+0

오, 이런, 네 말이 맞아. 나는 그것에 대해 완전히 잊었다. 내가 개발을 한 이래로 그것은 아주 사려 깊다. – Gamegoofs2

+0

좋다. 모든 사람에게 발생합니다. –

관련 문제