상세 컨텐츠

본문 제목

javascript / jQuery 개발시 PC, 모바일 접속유무 확인하기

IT공부방/jQuery, ajax, java

by 동해둘리 2016. 7. 19. 14:55

본문

반응형




웹사이트 개발시, PC환경에서 접속을 했는지 모바일에서 접속을 했는지 

확인하기 위한 javascript 코드 입니다.


navigator 객체의 platform 속성을 이용하여 확인을 하게 됩니다.

아래 링크는 navigator 객체의 Platform 속성에 대한 정의입니다.


http://www.w3schools.com/jsref/prop_nav_platform.asp




정의에 의하면, platform 속성에 가능한 값은 아래와 같습니다.


  • Win16 : 16비트 윈도위기반 컴퓨터
  • Win32 : 32비트 윈도위기반 컴퓨터
  • Win64 : 64비트 윈도위기반 컴퓨터
  • MacIntel   인텔CPU 를 가진 매킨토시 컴퓨터
  • Mac : 매킨토시컴퓨터
이상, 5가지 정도의 값이 PC접속시 발생가능한 속성이며 기타 속성은 무시하거나 모바일 접속으로 
생각하여도 좋을 것이다.

  • Linux armv7l
  • HP-UX
  • Linux i686
  • SunOS
  • WinCE
  • Mac68K : 10여년전 개발이 중단된 68k 프로세서를 장착한 매킨토시컴퓨터
  • MacPPC : 모토롤라에서 개발한 PowerPC 프로세서를 장착한 매킨토시컴퓨터
  • Etc..


아래에 javascript 예제코드가 있다.



var filter = "win16|win32|win64|macintel|mac|"; // PC일 경우 가능한 값


if( navigator.platform)

{

if( filter.indexOf(navigator.platform.toLowerCase())<0 )

{

    alert("모바일에서 접속하셨습니다");

}

else

{

alert("PC에서 접속하셨습니다");

}

}



다음과 같이 User-Agent 를 이용하여 확인하는 방법도 있다.



<%


 // 헤더에서 스마트폰 여부확인 후 리다이렉트

 String browser = request.getHeader("User-Agent");       // 브라우저 구해오기


 boolean result = false;


 if (browser.indexOf("Android") > 0) {                // 안드로이드로 접속했다면 결과값 true
     result = true;
 } else if (browser.indexOf("iPhone") > 0) {               // 아이폰으로 접속했다면 결과값 true
     result = true;
 }

 if (result == true) {
     response.sendRedirect("http://m.naver.com");         // 안드로이드나 아이폰으로 접속했다면 모바일사이트로 이동
 } 


%>


위 코드는 http://50english.blog.me/40124085444 에서 참고하였음




반응형

관련글 더보기

댓글 영역