userAgent = navigator.userAgent,//사용자 에이전트는 중국어로 사용자 에이전트, 줄여서 UA라고 합니다. 서버가 운영 체제 및 버전, CPU 유형, 브라우저 및 버전, 브라우저 렌더링을 식별할 수 있도록 하는 특수 문자열 헤더입니다. 고객이 사용하는 엔진, 브라우저 언어, 브라우저 플러그인 등
다음은 각 브라우저의 navigator.userAgent입니다
//Mozilla/5.0(Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/533.21.1(KHTML, like Gecko ) 버전/5.0.5 Safari/533.21.1 --safari
//Mozilla/5.0(Windows NT 5.1) AppleWebKit/535.1(KHTML, like Gecko) Chrome/13.0.782.220 Safari/535.1 --chrome
//Opera/9.80(Windows NT 5.1; U; Edition Next; zh-cn) Presto/2.8.158 Version/11.50 --opera
//Mozilla/4.0(호환; MSIE 7.0; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET4.0E;
//Mozilla/5.0(Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.24) Gecko/20111103 Firefox/3.6.24 --firefox
//일치하는 응답 브라우저 표현에 대한 정규
rwebkit = /(webkit)[ /]([w.] )/,//webkit
ropera = /(opera)( ?:. *version)?[ /]([w.] )/,//opera
rmsie = /(msie) ([w.] )/,//ie
rmozilla = /(mozilla) (?: .*? rv:([w.] ))?/,//mozilla
userAgent를 통해 다음과 같은 방식으로 chrome을 일치시킬 수 있음을 알 수 있지만 Like safari , 둘 다 "safari"를 갖습니다.
rchrome=/(Chrome)[ /]([w.] )/
과 일치하도록 rwebkit 앞에 놓을 수도 있습니다. 마찬가지로 판단을 위해 rmozilla 앞에 넣으세요
rfirefox=/(Firefox)[ /]([w.] )/
uaMatch : function(ua ) {//주로 얻은 브라우저의 유형과 버전
ua = ua.toLowerCase();//매개변수는 navigator.userAgent입니다. 물론 소문자로 변환할 수도 있습니다(예: /(webkit)[ /]([w.] )/i)
var match = rwebkit.exec( ua) ||
ropera.exec( ua ) ||
ua.indexOf("호환") [] ;//일치에 exec가 사용되므로 반환된 결과는 전체 일치 및 /(Chrome)[ /]([w.] )/와 같은 응답의 하위 일치입니다. 일치하면 Chrome/13.0이 반환됩니다. .782.220, match[1 ] get chrome, match[2] get 13.0.782.220;
return { 브라우저: match[1] || "", version: match[2] || ;
}
//uaMatch는 jQuery의 메소드입니다. 여기서는 브라우저 모델 브라우저 및 버전을 호출하고 저장합니다.
browserMatch = jQuery.uaMatch( userAgent ); uaMatch 및 반환 객체 return { browser: match[1] || "", version: match[2] || "0" }
if ( browserMatch.browser ) {
jQuery.browser[ browserMatch. browser ] = true;//chromesafarioperamsiemozilla, 예를 들어 오페라 브라우저에서 특정 작업을 수행하려는 경우 $.browser.opera를 사용하여 오페라 브라우저인지 여부를 확인할 수 있습니다(true, false)
jQuery.browser.version = browserMatch.version;//브라우저 버전
}
if ( jQuery.browser.webkit ) {
jQuery.browser.safari = true;/ /Safari는 AppleWebKit을 사용하기 때문에 엔진은 Safari와 Chrome에 모두 있으므로 별도로 처리됩니다.
}