웹 프로그래밍에서는 사용자의 브라우저와 운영체제를 식별하는 것이 매우 중요합니다. HTML과 JavaScript에 대한 지원 수준이 다르기 때문입니다. 일반적으로 시스템 로그인 페이지나 홈 페이지에서 사용됩니다. 구체적인 적용은 다음과 같습니다. 코드 복사 코드는 다음과 같습니다. 로그인 < script type="text/javascript"> <BR>window.onload = function () { <BR>if ((isMinIE5_5 && isWin) || (isMinMoz1 && isUnix) <BR>|| isMinSafari1 && isMac)) { <BR>document.getElementById("divLogin").style.visibility = "visible"; <BR>document.getElementById("divError").style.visibility = "hidden" <BR>} <BR>}; <BR></head> <BR><body><form method="post" action="DoLogin.jsp"> <div style=" 테두리: 2px 점선 파란색; 배경색: #dedede; 높이: 300px; 패딩: 10px"> <BR><div id="divError" 스타일="위치: 절대; 왼쪽: 20px ; top: 100px; " > <BR>이 웹 애플리케이션에는 다음 중 하나가 필요합니다: <BR><ul> <BR><li>Windows용 Internet Explorer 5.5 이상</li> <BR>< li>Mozilla 1.0 이상(Unix용)<BR><li>Safari 1.0 이상(Macintosh용)<BR></ul> <BR><p> ;이 웹 애플리케이션에는 JavaScript도 필요합니다(위 브라우저 중 하나를 사용하는 경우 JavaScript가 활성화되어 있는지 확인하세요).</p> <BR></noscript> <div id=" divLogin" 스타일="위치: 절대; 왼쪽: 20px; 상단: 100px; 가시성: 숨김"><BR><table border="0" width="100%" height="100 %">< tr><td align="center"> <BR><table border="0"> <BR><tr> <BR><td>사용자 이름:</ td><td> <input type="text" name="txtUsername" /></td> <BR></tr> <BR><td> :</td><input type="password" name="txtPassword" /></td> <BR></tr> ;td></ td><td><input type="Submit" value="Login" /></td> <BR></tr> 🎜></td></tr></table> <BR></div> <BR></body> 🎜></html> ; <BR><BR><BR><BR>Detect.js<BR> <BR><BR><BR><BR><BR>코드 복사<BR><BR><BR> 코드는 다음과 같습니다.<BR><div class="codebody" id="code48256"><BR>/**************************************************** ********************* <BR>파일명 : discover.js <BR>작성일 : <BR>작성자 : <BR>설명 : 브라우저 감지 및 운영 시스템 <BR>********************************************** *************************/ <BR>var sUserAgent = navigator.userAgent; <BR>var fAppVersion =parseFloat(navigator.appVersion); <BR>function CompareVersions(sVersion1, sVersion2) { <BR>var aVersion1 = sVersion1.split("."); <BR>var aVersion2 = sVersion2.split("."); <BR>if (aVersion1.length > aVersion2.length) { <BR>for (var i=0; i < aVersion1.length - aVersion2.length; i ) { <BR>aVersion2.push("0") ; <BR>} <BR>} else if (aVersion1.length < aVersion2.length) { <BR>for (var i=0; i < aVersion2.length - aVersion1.length; i ) { <BR>aVersion1. 푸시("0"); <BR>} <BR>} <BR>for (var i=0; i < aVersion1.length; i ) { <BR>if (aVersion1[i] < aVersion2[i]) { <BR>return - 1; <BR>} else if (aVersion1[i] > aVersion2[i]) { <BR>return 1; <BR>} <BR>} <BR>0을 반환합니다. <BR>} <BR>var isOpera = sUserAgent.indexOf("Opera") > -1; <BR>var isMinOpera4 = isMinOpera5 = isMinOpera6 = isMinOpera7 = isMinOpera7_5 = false; <BR>if (isOpera) { <BR>var fOperaVersion; <BR>if(navigator.appName == "Opera") { <BR>fOperaVersion = fAppVersion; <BR>} else { <BR>var reOperaVersion = new RegExp("Opera (\d \.\d )"); <BR>reOperaVersion.test(sUserAgent); <BR>fOperaVersion =parseFloat(RegExp["$1"]); <BR>} <BR>isMinOpera4 = fOperaVersion >= 4; <BR>isMinOpera5 = fOperaVersion >= 5; <BR>isMinOpera6 = fOperaVersion >= 6; <BR>isMinOpera7 = fOperaVersion >= 7; <BR>isMinOpera7_5 = fOperaVersion >= 7.5; <BR>} <BR>var isKHTML = sUserAgent.indexOf("KHTML") > -1 <BR>|| sUserAgent.indexOf("Konqueror") > -1 <BR>|| sUserAgent.indexOf("AppleWebKit") > -1; <BR>var isMinSafari1 = isMinSafari1_2 = false; <BR>var isMinKonq2_2 = isMinKonq3 = isMinKonq3_1 = isMinKonq3_2 = false; <BR>if (isKHTML) { <BR>isSafari = sUserAgent.indexOf("AppleWebKit") > -1; <BR>isKonq = sUserAgent.indexOf("Konqueror") > -1; <BR>if (isSafari) { <BR>var reAppleWebKit = new RegExp("AppleWebKit\/(\d (?:\.\d*)?)"); <BR>reAppleWebKit.test(sUserAgent); <BR>var fAppleWebKitVersion =parseFloat(RegExp["$1"]); <BR>isMinSafari1 = fAppleWebKitVersion >= 85; <BR>isMinSafari1_2 = fAppleWebKitVersion >= 124; <BR>} else if (isKonq) { <BR>var reKonq = new RegExp("Konqueror\/(\d (?:\.\d (?:\.\d)?)?)"); <BR>reKonq.test(sUserAgent); <BR>isMinKonq2_2 = CompareVersions(RegExp["$1"], "2.2") >= 0; <BR>isMinKonq3 = CompareVersions(RegExp["$1"], "3.0") >= 0; <BR>isMinKonq3_1 = CompareVersions(RegExp["$1"], "3.1") >= 0; <BR>isMinKonq3_2 = CompareVersions(RegExp["$1"], "3.2") >= 0; <BR>} <BR>} <BR>var isIE = sUserAgent.indexOf("호환") > -1 <BR>&& sUserAgent.indexOf("MSIE") > -1 <BR>&& !isOpera; <BR>var isMinIE4 = isMinIE5 = isMinIE5_5 = isMinIE6 = false; <BR>if (isIE) { <BR>var reIE = new RegExp("MSIE (\d \.\d );"); <BR>reIE.test(sUserAgent); <BR>var fIEVersion =parseFloat(RegExp["$1"]); <BR>isMinIE4 = fIEVersion >= 4; <BR>isMinIE5 = fIEVersion >= 5; <BR>isMinIE5_5 = fIEVersion >= 5.5; <BR>isMinIE6 = fIEVersion >= 6.0; <BR>} <BR>var isMoz = sUserAgent.indexOf("Gecko") > -1 <BR>&& !isKHTML; <BR>var isMinMoz1 = sMinMoz1_4 = isMinMoz1_5 = false; <BR>if (isMoz) { <BR>var reMoz = new RegExp("rv:(\d \.\d (?:\.\d )?)"); <BR>reMoz.test(sUserAgent); <BR>isMinMoz1 = CompareVersions(RegExp["$1"], "1.0") >= 0; <BR>isMinMoz1_4 = CompareVersions(RegExp["$1"], "1.4") >= 0; <BR>isMinMoz1_5 = CompareVersions(RegExp["$1"], "1.5") >= 0; <BR>} <BR>var isNS4 = !isIE && !isOpera && !isMoz && !isKHTML <BR>&& (sUserAgent.indexOf("Mozilla") == 0) <BR>&& (navigator.appName == "Netscape ") <BR>&& (fAppVersion >= 4.0 && fAppVersion < 5.0); <BR>var isMinNS4 = isMinNS4_5 = isMinNS4_7 = isMinNS4_8 = false; <BR>if (isNS4) { <BR>isMinNS4 = true; <BR>isMinNS4_5 = fAppVersion >= 4.5; <BR>isMinNS4_7 = fAppVersion >= 4.7; <BR>isMinNS4_8 = fAppVersion >= 4.8; <BR>}<BR>var isWin = (navigator.platform == "Win32") || (navigator.platform == "윈도우"); <BR>var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") <BR>|| (navigator.platform == "매킨토시"); <BR>var isUnix = (navigator.platform == "X11") && !isWin && !isMac; <BR>var isWin95 = isWin98 = isWinNT4 = isWin2K = isWinME = isWinXP = false; <BR>var isMac68K = isMacPPC = false; <BR>var isSunOS = isMinSunOS4 = isMinSunOS5 = isMinSunOS5_5 = false; <BR>if (isWin) { <BR>isWin95 = sUserAgent.indexOf("Win95") > -1 <BR>|| sUserAgent.indexOf("윈도우 95") > -1; <BR>isWin98 = sUserAgent.indexOf("Win98") > -1 <BR>|| sUserAgent.indexOf("Windows 98") > -1; <BR>isWinME = sUserAgent.indexOf("Win 9x 4.90") > -1 <BR>|| sUserAgent.indexOf("Windows ME") > -1; <BR>isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 <BR>|| sUserAgent.indexOf("Windows 2000") > -1; <BR>isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 <BR>|| sUserAgent.indexOf("Windows XP") > -1; <BR>isWinNT4 = sUserAgent.indexOf("WinNT") > -1 <BR>|| sUserAgent.indexOf("Windows NT") > -1 <BR>|| sUserAgent.indexOf("WinNT4.0") > -1 <BR>|| sUserAgent.indexOf("Windows NT 4.0") > -1 <BR>&& (!isWinME && !isWin2K && !isWinXP); <BR>} <BR>if (isMac) { <BR>isMac68K = sUserAgent.indexOf("Mac_68000") > -1 <BR>|| sUserAgent.indexOf("68K") > -1; <BR>isMacPPC = sUserAgent.indexOf("Mac_PowerPC") > -1 <BR>|| sUserAgent.indexOf("PPC") > -1; <BR>} <BR>if (isUnix) { <BR>isSunOS = sUserAgent.indexOf("SunOS") > -1; <BR>if (isSunOS) { <BR>var reSunOS = new RegExp("SunOS (\d \.\d (?:\.\d )?)"); <BR>reSunOS.test(sUserAgent); <BR>isMinSunOS4 = CompareVersions(RegExp["$1"], "4.0") >= 0; <BR>isMinSunOS5 = CompareVersions(RegExp["$1"], "5.0") >= 0; <BR>isMinSunOS5_5 = CompareVersions(RegExp["$1"], "5.5") >= 0; <BR>} <BR>} <BR>