오히려 좋아..

상황이 나쁘게만 흘러가는 것 같을 때 외쳐보자.. .

궁금한 마음으로 포트폴리오 보기

Language/Javascript, typescript

[javascript, DOM] 익스플로러에서 접근시 Edge로 리다이렉트

junha6316 2021. 4. 21. 11:24

 

마이크로소프트(Microsoft) 에서 익스플로러(IE, Internet Explorer)를 업데이트 지원하지 않은지 거의 8개월이 되간다. 하지만 여전히 우리나라에서는 여전히 많은 사람들이 익스플로러를 사용하고 있다. 하지만 매번 익스플로러를 고려해 웹페이지를 작성할 수는 없다. 지원하지 않는 문법이 너무 많기 때문이다. 

 

이번 포스트에서는 현재 접속한 브라우저를 확인하고 만약 익스플로러 라면 사용자를 다른 웹브라우저를 사용하도록 유도하는 방법에 대해 알아보도록 하겠다.

 

코드는 아래와 같다


//페이지가 로드 되었을 때 해당 함수를 실행시킨다.
window.onload = function(){
        if (window.navigator.userAgent.match(/MSIE|Internet Explorer|Trident/i)){
            if (window.confirm("본 페이지는 IE에 최적화되어 있지 않습니다. Edge로 이동하시겠습니까?")){
                window.location = "microsoft-edge:" + window.location.href;
            }
        }
    };

window.navigator.userAgent는 접근한 클라이언트의 정보를 포함한다. 

Chrome 개발자도구(F12) 콘솔에서 확인해보면 아래와 같이 나온다.

>>> window.navigator.userAgent
"Mozilla/5.0 (Macintosh; Intel Mac OS X 11_2_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36"

 

이런 클라이언트 정보를 이용해 만약 해당 클라이언트가 웹페이지에 IE를 이용해 접근했다면 confirm을 이용해 의사를 물어보고

엣지로 넘겨주면 된다.

 

만약 크롬이나 파이어 폭스로 넘겨주고 싶다면 이부분을 바꿔주면 된다.

window.location = ""