Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Mac
- Object
- vscode
- CSS
- 실기
- 지속가능한개발자
- Django
- 사이트
- 5기
- Express
- 네이버커넥트재단
- 개발자
- 알고리즘
- boostcamp
- 코딩테스트
- 삼각형
- react
- 백준
- js
- 런타임에러
- 정보처리기사
- Git
- python
- javascript
- 코테
- 부스트캠프
- 배포
- 자바스크립트
- node
- array
Archives
- Today
- Total
개발 공부 기록
[Javascript] 사용자가 접속한 브라우저 확인하기 본문
코드
Chrome 브라우저 외의 브라우저에서 접속했을 때 경고창을 띄워주기 위한 코드를 작성해보았다.
function isBrowserCheck(){
const agt = navigator.userAgent.toLowerCase();
if (agt.indexOf("chrome") != -1) return 'Chrome'
if (agt.indexOf("opera") != -1) return 'Opera'
if (agt.indexOf("staroffice") != -1) return 'Star Office'
if (agt.indexOf("webtv") != -1) return 'WebTV'
if (agt.indexOf("beonex") != -1) return 'Beonex'
if (agt.indexOf("chimera") != -1) return 'Chimera'
if (agt.indexOf("netpositive") != -1) return 'NetPositive'
if (agt.indexOf("phoenix") != -1) return 'Phoenix'
if (agt.indexOf("firefox") != -1) return 'Firefox'
if (agt.indexOf("safari") != -1) return 'Safari'
if (agt.indexOf("skipstone") != -1) return 'SkipStone'
if (agt.indexOf("netscape") != -1) return 'Netscape'
if (agt.indexOf("mozilla/5.0") != -1) return 'Mozilla'
if (agt.indexOf("msie") != -1) {
let rv = -1;
if (navigator.appName == 'Microsoft Internet Explorer') {
let ua = navigator.userAgent; var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})")
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1)
}
return 'Internet Explorer '+rv
}
}
function checkBrowser(){
const browser = isBrowserCheck()
console.log(browser)
if(browser !== 'Chrome'){
alert('You should use "Chrome". Otherwise, you can have a screen ratio problem.')
}
}
접속한 브라우저 체크 : https://velog.io/@___/javascript-%EC%A0%91%EC%86%8D%ED%95%9C-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80-%ED%99%95%EC%9D%B8
실행 결과
+ 특이사항
Microsoft Edge로 접속하면 해당 경고문구가 뜨지 않고 콘솔결과를 확인했을 때 "Chrome"으로 출력되는 것을 확인할 수 있었다.
agt 결과를 출력해보니 아래와 같았고 chrome을 검사하기 전에 edge인지 우선 확인하도록 변경하였다.
const agt = navigator.userAgent.toLowerCase()
console.log(agt)
// mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko)
// chrome/85.0.4183.83 safari/537.36 edg/85.0.564.41
if (agt.indexOf("edg") != -1) return 'Edge'
'개발 > javascript' 카테고리의 다른 글
[node] express router 응답 메서드 (0) | 2020.09.06 |
---|---|
[javascript] 10단위로 반올림하기 (0) | 2020.09.05 |
[node] express.js 웹 디렉토리 구조 (0) | 2020.09.01 |
[node] PM2 (0) | 2020.09.01 |
[Javascript] 객체 자세하게 출력하기 (0) | 2020.08.25 |
Comments