본문 바로가기

웹언어/JAVASCRIPT

[JS강좌] 18강 BOM - 모바일기기접속 확인 - 오쌤의 니가스터디

728x90
반응형

 

 

 

 

 

 

 

 

 

** 영상으로 보실분은 아래 주소를 클릭해주세요.

https://youtu.be/Ii7oydkOWTg

 

 

 

 

 

 

 

 

 

 

 

 

 

1. 현재 웹이 모바일기기에서 접속했는지 확인

- 지난 강좌에서 배웠던 BOM의 navigator객체를 통해 현재 웹이 모바일기기에서 접속했는지 확인해보도록 하겠습니다.

 

 

 

## 코드 예시

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="UTF-8">
        <!-- 뷰포트메타태그 : 모바일기기장치인식하는 코드 -->
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>JS BOM</title>
        <script>
            //모바일기기이름을 담은 배열
            var mobile_keys = new Array('iPhone','iPad','Android','BlackBerry','Windows Phone',
            'Windows CE','LG','MOT','SAMSUNG','SonyEricsson','Nokia');

            for(var i in mobile_keys){
                //브라우저의 에이전트 정보에 모바일이름과 매치되는 글자가 있다면
                if(navigator.userAgent.match(mobile_keys[i])){ 
                    alert('모바일기기에서 접속했습니다.');
                }
            }
        </script>
    </head>
    <body>
        
    </body>
</html>

- 뷰포트메타태그는 모바일기기를 인식하기 위한 코드입니다.

- [mobile_keys]변수에 모바일기기 이름들을 담아놨습니다.

- [navigator.userAgent]는 사용자가 접속한 브라우저의 에이전트 정보입니다. 그 중에는 모바일기기면 이름이 들어 있습니다.

- [match]는 String객체의 메서드로 문자열에 매개변수와 같은 값이 있으면 true를 반환합니다.

 

 

 

 

## 코드 결과

- 크롬은 모바일을 테스트해볼수 있습니다.

- 크롬 개발자모드(F12)를 보면 모바일버전으로 볼수 있습니다. 

 

 

 

 

 

 

 

 

 

 

** 위의 코드를 사용하면 모바일에서 PC웹주소를 쳐도 모바일웹 주소로 보낼 수 있습니다.

- 위에 그림에 보면 다음의 pc웹주소인 [daum.net]를 치나 [m.daum.net]으로 가는 것을 볼 수 있습니다.

 

 

 

 

 

## 코드 예시

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="UTF-8">
        <!-- 뷰포트메타태그 : 모바일기기장치인식하는 코드 -->
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>JS BOM</title>
        <script>
            //모바일기기이름을 담은 배열
            var mobile_keys = new Array('iPhone','iPad','Android','BlackBerry','Windows Phone',
            'Windows CE','LG','MOT','SAMSUNG','SonyEricsson','Nokia');

            for(var i in mobile_keys){
                //브라우저의 에이전트 정보에 모바일이름과 매치되는 글자가 있다면
                if(navigator.userAgent.match(mobile_keys[i])){ 
                    location.assign('http://m.daum.net');
                }
            }
        </script>
    </head>
    <body>
        
    </body>
</html>

- location.assign() 메서드는 주소표시줄을 변경시키는 메서드입니다.

- 모바일기기에서 접속했다면 모바일주소로 변경시키라는 코드입니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형