
#접속기기확인 #접근확인 #모바일체크로직 #모바일확인 #소스코드 #설명은생략한다 #레퍼런스 #자바스크립트
포스팅 목차 바로가기
안녕하세요, 배곧동개발자 입니다.
모바일의 사용량이 증가함에 따라 웹페이지들의 모바일접근성을 구하는 경우가 많죠? (사실상 이제는 필수)
또는 아직 간혹 사용중인 엑티브엑스등의 사용에 의해 모바일에서의 접근을 막아야 하는 경우도 있구요. 그러한 경우에 PC로 접근했는지 모바일로 접근했는지를 알아야하는데…
어떻게 알 수 있을까요?
1. 로직 만들기
// 접속 기기 구분자
var gbn = "pc";
// 모바일 접속 리스트
var phoneList = new Array('iPhone', 'iPod', 'BlackBerry', 'Android', 'Windows CE', 'LG', 'MOT', 'SAMSUNG', 'SonyEricsson');
for (var phone in phoneList){
// 현재 접속한 기기가 모바일인지 아닌지 확인
if (navigator.userAgent.match(phoneList[phone]) != null){
// 모바일이면 구분자를 변경
gbn = "mobile";
}
}
// 구분자에 따라 분기문 작성
if(gbn == "pc"){
alert("콤퓨타로접속");
}else{
alert("모바일로접속");
}
위의 소스를 쓰시면 아주 간단히 해결됩니다. navigator.userAgent 를 이용해서 접속한 기기의 기종에 따라서 PC인지, 모바일인지를 체크하는 로직이지요.

2. 함수로 만들기
이거를 함수로 만들어서 사용해보자면
function isMobile(){
var result = false;
// 모바일 접속 리스트
var phoneList = new Array('iPhone', 'iPod', 'BlackBerry', 'Android', 'Windows CE', 'LG', 'MOT', 'SAMSUNG', 'SonyEricsson');
for (var phone in phoneList){
// 현재 접속한 기기가 모바일인지 아닌지 확인
if (navigator.userAgent.match(phoneList[phone]) != null){
// 모바일이면 구분자를 변경
result = true;
}
}
return result;
}
이렇게 쓸 수 있습니다. 이후부터는 isMobile()을 호출하면 모바일이면 true, 아니면 false를 리턴해주기에 분기문 조건으로 넣어서 원하는 로직을 짤 수 있지요.
레퍼런스용도로 작성하는 글이니 긴 설명은 하지 않을께요!
이만, 배곧동개발자 였습니다.