JavaScript로 사용자 에이전트 가져 오기


87

사용자의 사용자 에이전트를 가져와 속성에 적용 할 수있는 스크립트를 얻고 싶습니다.

웹 사이트 문제 문의 양식을 만들고 있는데 일반적으로 사용자가 사용하는 브라우저를 알아야합니다. 사용자 에이전트 문자열을 감지하고 입력 요소의 값으로 어떻게 적용 할 수 있습니까?

내 HTML은 다음과 같습니다.

<input type="hidden" id="UserAgent" name="User Agent" />

사용자 에이전트를 value 속성으로 추가하여 다음과 같이 보이기를 원합니다.

<input type="hidden" id="UserAgent" name="User Agent" value="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.53.11 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10" />

4
이를 위해 JavaScript가 필요하지 않습니다. HTTP 헤더에서 user-agent-string을 읽으십시오.
Bergi

8
@Bergi : 실제로 서버 측에서 원하는 경우에만 가능합니다. JavaScript 사용- navigator.userAgent허용되는 답변에 따라 충분해야합니다.
Robin Maben 2013-08-13

1
@Robin : OP 서버 측을 요청하고 있으며 연락처 양식과 함께 UA 문자열을 게시하고 싶습니다.
Bergi 2013-08-13

4
애플리케이션 클라이언트 측의 일부를 생성하는 경우에는 그렇지 않습니다. 그가 한 일인 것 같습니다.
oligofren 2014.01.22

답변:


179

순수 자바 스크립트

document.getElementById('UserAgent').value = navigator.userAgent;
<input type="text" id="UserAgent">

jQuery

$('#UserAgent').val(navigator.userAgent);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<input type="text" id="UserAgent">


8
대답에 비 JQuery 대안을 추가하십시오. 그래서 많은 새로운 개발자들이 jQuery를가 있다고 생각 입니다 :-( 자바 스크립트
마크 쿠퍼

jQuery Migrate 플러그인이 포함되어 있지 않으면 jQuery 1.9 이상에서 작동하지 않습니다.
Davlio

@Davlio 이것은 사실이 아닙니다. 예제 자체는 jQuery 1.11.1을 사용하고 있으며 Migrate 플러그인을 사용하지 않습니다.
아담 메리 필드

@AdamMerrifield 당신이 맞아요! 나는 $.browser코멘트를 편집 할 수 없다고 말했고 .
Davlio 2017-04-26

51

Original Q는 jQuery에 대해 아무 말도하지 않았습니다. 그래서

document.getElementById('UserAgent').value = navigator.userAgent;
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.