Use JS to detect computer configuration (with code)
This time I will bring you the use of JS to detect computer configuration (with code), and what are the precautions for using JS to detect computer configuration. The following is a practical case, let’s take a look.
The following code will share with you the js code to implement the computer configuration detection function. The specific code is as follows:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <style type="text/css"> h1 { text-align: center; color: #000046; } .i { display: inline-block; vertical-align: middle; width: 30px; height: 30px; margin: 5px 20px; background: url(http://yi.sunlands.com/ent-portal-war/images/tc_icon.png) no-repeat; } .a { background-position: 0 0; } .b { background-position: 0 -40px; } .c { background-position: 0 -80px; } .d { background-position: 0 -120px; } .e { background-position: 0 -160px; } b { color: #007ac3; padding-right: 10px; } i { color: green; font-weight: bold; } .box { width: 460px; height: 360px; margin: auto; padding: 20px; border: 2px solid darkgray; font-size: 18px; border-radius: 10px; border-left-width: 10px; border-right-width: 10px; } </style> <body> <h1>电脑配置检测</h1> <hr /> <p class="box"> <p> <i class="i a"></i> <b>您的操作系统是: </b> <i id="xitong"></i> </p> <p> <i class="i b"></i> <b>您的网络链接状态是: </b> <i id="netline"></i> </p> <p> <i class="i b"></i> <b>您当前浏览网速是:</b> <i id="wangsu"></i> </p> <p> <i class="i c"></i> <b>您电脑的分辨率是:</b> <i id="fenbianlv"></i> </p> <p> <i class="i d"></i> <b>您的浏览器是:</b> <i id="liulanqi"></i> </p> <p> <i class="i e"></i> <b>您的flash的版本是:</b> <i id="flash_banben"></i> </p> </p> </body> <script src="jquery-1.12.4.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> $(function(){ if(typeof Obj == "undefined") { var Obj = new Object(); } if(typeof Obj.SWFObjectUtil == "undefined") { Obj.SWFObjectUtil = new Object(); } Obj.SWFObject = function(_1, id, w, h, _5, c, _7, _8, _9, _a) { if(!document.getElementById) return; this.params = new Object(); this.variables = new Object(); this.attributes = new Array(); if(_1) this.setAttribute("swf", _1); if(id) this.setAttribute("id", id); if(w) this.setAttribute("width", w); if(h) this.setAttribute("height", h); if(_5) this.setAttribute("version", new Obj.PlayerVersion(_5.toString().split("."))); this.installedVer = Obj.SWFObjectUtil.getPlayerVersion(); if(!window.opera && document.all && this.installedVer.major > 7) { Obj.SWFObject.doPrepUnload = true; } if(c) this.addParam("bgcolor", c); var q = _7 ? _7 : "high"; this.addParam("quality", q); this.setAttribute("useExpressInstall", false); this.setAttribute("doExpressInstall", false); var _c = (_8) ? _8 : window.location; this.setAttribute("xiRedirectUrl", _c); this.setAttribute("redirectUrl", ""); if(_9) this.setAttribute("redirectUrl", _9); }; Obj.SWFObject.prototype = { useExpressInstall: function(_d) { this.xiSWFPath = !_d ? "expressinstall.swf" : _d; this.setAttribute("useExpressInstall", true); }, setAttribute: function(_e, _f) { this.attributes[_e] = _f; }, getAttribute: function(_10) { return this.attributes[_10]; }, addParam: function(_11, _12) { this.params[_11] = _12; }, getParams: function() { return this.params; }, addVariable: function(_13, _14) { this.variables[_13] = _14; }, getVariable: function(_15) { return this.variables[_15]; }, getVariables: function() { return this.variables; }, getVariablePairs: function() { var _16 = new Array(); var key; var _18 = this.getVariables(); for(key in _18) { _16[_16.length] = key + "=" + _18[key]; } return _16; }, getSWFHTML: function() { var _19 = ""; if(navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { if(this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "PlugIn"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<embed type=\"application/x-shockwave-flash\" src=\"" + this.getAttribute("swf") + "\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\""; _19 += " id=\"" + this.getAttribute("id") + "\" name=\"" + this.getAttribute("id") + "\" "; var _1a = this.getParams(); for(var key in _1a) { _19 += [key] + "=\"" + _1a[key] + "\" "; } var _1c = this.getVariablePairs().join("&"); if(_1c.length > 0) { _19 += "flashvars=\"" + _1c + "\""; } _19 += "/>"; } else { if(this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "ActiveX"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<object id=\"" + this.getAttribute("id") + "\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\">"; _19 += "<param name=\"movie\" value=\"" + this.getAttribute("swf") + "\" />"; var _1d = this.getParams(); for(var key in _1d) { _19 += "<param name=\"" + key + "\" value=\"" + _1d[key] + "\" />"; } var _1f = this.getVariablePairs().join("&"); if(_1f.length > 0) { _19 += "<param name=\"flashvars\" value=\"" + _1f + "\" />"; } _19 += "</object>"; } return _19; }, write: function(_20) { if(this.getAttribute("useExpressInstall")) { var _21 = new Obj.PlayerVersion([6, 0, 65]); if(this.installedVer.versionIsValid(_21) && !this.installedVer.versionIsValid(this.getAttribute("version"))) { this.setAttribute("doExpressInstall", true); this.addVariable("MMredirectURL", escape(this.getAttribute("xiRedirectUrl"))); document.title = document.title.slice(0, 47) + " - Flash Player Installation"; this.addVariable("MMdoctitle", document.title); } } if( this.getAttribute("doExpressInstall") || this.installedVer.versionIsValid(this.getAttribute("version"))) { var n = (typeof _20 == "string") ? document.getElementById(_20) : _20; n.innerHTML = this.getSWFHTML(); return true; } else { if(this.getAttribute("redirectUrl") != "") { document.location.replace(this.getAttribute("redirectUrl")); } } return false; } }; Obj.PlayerVersion = function(_29) { this.major = _29[0] != null ? parseInt(_29[0]) : 0; this.minor = _29[1] != null ? parseInt(_29[1]) : 0; this.rev = _29[2] != null ? parseInt(_29[2]) : 0; }; Obj.SWFObjectUtil.getPlayerVersion = function() { var _23 = new Obj.PlayerVersion([0, 0, 0]); if(navigator.plugins && navigator.mimeTypes.length) { var x = navigator.plugins["Shockwave Flash"]; if(x && x.description) { _23 = new Obj.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".")); } } else { if(navigator.userAgent && navigator.userAgent.indexOf("Windows CE") >= 0) { var axo = 1; var _26 = 3; while(axo) { try { _26++; axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + _26); _23 = new Obj.PlayerVersion([_26, 0, 0]); } catch(e) { axo = null; } } } else { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); } catch(e) { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); _23 = new Obj.PlayerVersion([6, 0, 21]); axo.AllowScriptAccess = "always"; } catch(e) { if(_23.major == 6) { return _23; } } try { axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); } catch(e) {} } if(axo != null) { _23 = new Obj.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(",")); } } } return _23; }; //获取浏览器flash版本号 function getFlashVersion() { var version = Obj.SWFObjectUtil.getPlayerVersion(); $("#flash_banben").html(version['major'] + "." + version['minor'] + "." + version['rev']); }; //获取操作系统屏幕分辨率 function getScreenSize() { return { width: screen.width, height: screen.height }; } $("#fenbianlv").html(getScreenSize().width + "*" + getScreenSize().height); function getNetline() { $('#netline').text("网络已链接"); window.ononline = function() { $('#netline').text("网络已链接"); }; window.onoffline = function() { $('#netline').text("网络已断开"); }; } //获取浏览器版本 function getExplorerVersion() { var Sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; var result = ""; (s = ua.match(/qqbrowser\/([\d.]+)/)) ? Sys.qqbrowser = s[1]: (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/(trident)\/([\d.]+)/)) ? Sys.ie = '11.0' : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] : (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] : (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0; if(Sys.ie) result = "IE " + Sys.ie; else if(Sys.firefox) result = "firefox " + Sys.firefox; else if(Sys.chrome) result = "chrome " + Sys.chrome; else if(Sys.opera) result = "opera " + Sys.opera; else if(Sys.safari) result = "safari" + Sys.safari; else if(Sys.qqbrowser) result = "QQBrowser" + Sys.qqbrowser; else result = "未知"; $("#liulanqi").html(result + "(内核)"); } //获取操作系统版本 function getOsVersion() { var opName = ""; var Name = ""; var ua = window.navigator.userAgent; var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows") || (navigator.platform == "Win64"); var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel"); if(isMac) { opName = "Mac"; Name = "Mac"; } else if(isWin) { var osN = ""; if(ua.indexOf("WOW") != -1 || ua.indexOf("Win64") != -1) { osN = "64"; } else { osN = "32"; } var osV = ua.substr(ua.indexOf("Windows NT ") + 11, 3); switch(osV) { case "5.0": opName = "Windows XP2000"; Name = "Win2000"; break; case "5.1": opName = "Windows XP "; Name = "WinXP"; break; case "5.2": opName = "Windows 2003"; Name = "Win2003"; break; case "6.1": opName = "Windows 7 " + osN + "位"; Name = "Win7"; break; case "6.3": opName = "Windows 8 " + osN + "位"; Name = "Win8"; break; default: Name = "Other"; break; } } else { var isUnix = (navigator.platform == "X11") && !isWin && !isMac; if(isUnix) { opName = "Unix"; Name = "Unix"; } else { var isLinux = (String(navigator.platform).indexOf("Linux") > -1); if(isLinux) { opName = "Linux"; Name = "Linux"; } else { Name = "Other"; } } } $("#xitong").html(opName); } //获取网速 function getNet() { var starttime = new Date(); var size = 0, //文件长度,由脚本使用HEAD自动计算 url = "2017-08-22_233329.jpg?" + new Date().valueOf(); //获取文件的长度: var xhr = $.ajax({ type: 'get', //"head", url: url, success: function(msg) { size = xhr.getResponseHeader('Content-Length'); //开始GET数据: $.get(url, function(data) { var endtime = new Date(); usetime = endtime - starttime; if(usetime == 0) { usetime = 10; } var speed = (size / (1024)) / (usetime / (1000)); var result_text = speed.toFixed(2); $("#wangsu").html(result_text + "KB/S"); }); } }); } getNet(); getOsVersion(); getExplorerVersion(); getFlashVersion(); getNetline(); }()); </script> </html>
Detailed explanation of the use of JS event delegation
JS verification birth date regular expression
The above is the detailed content of Use JS to detect computer configuration (with code). For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Title: The working principle and configuration method of GDM in Linux systems In Linux operating systems, GDM (GNOMEDisplayManager) is a common display manager used to control graphical user interface (GUI) login and user session management. This article will introduce the working principle and configuration method of GDM, as well as provide specific code examples. 1. Working principle of GDM GDM is the display manager in the GNOME desktop environment. It is responsible for starting the X server and providing the login interface. The user enters

What to do with blue screen code 0x0000001? The blue screen error is a warning mechanism when there is a problem with the computer system or hardware. Code 0x0000001 usually indicates a hardware or driver failure. When users suddenly encounter a blue screen error while using their computer, they may feel panicked and at a loss. Fortunately, most blue screen errors can be troubleshooted and dealt with with a few simple steps. This article will introduce readers to some methods to solve the blue screen error code 0x0000001. First, when encountering a blue screen error, we can try to restart

Understanding Linux Bashrc: Function, Configuration and Usage In Linux systems, Bashrc (BourneAgainShellruncommands) is a very important configuration file, which contains various commands and settings that are automatically run when the system starts. The Bashrc file is usually located in the user's home directory and is a hidden file. Its function is to customize the Bashshell environment for the user. 1. Bashrc function setting environment

If you need to program any device remotely, this article will help you. We will share the top GE universal remote codes for programming any device. What is a GE remote control? GEUniversalRemote is a remote control that can be used to control multiple devices such as smart TVs, LG, Vizio, Sony, Blu-ray, DVD, DVR, Roku, AppleTV, streaming media players and more. GEUniversal remote controls come in various models with different features and functions. GEUniversalRemote can control up to four devices. Top Universal Remote Codes to Program on Any Device GE remotes come with a set of codes that allow them to work with different devices. you may

How to configure a workgroup in Win11 A workgroup is a way to connect multiple computers in a local area network, which allows files, printers, and other resources to be shared between computers. In Win11 system, configuring a workgroup is very simple, just follow the steps below. Step 1: Open the "Settings" application. First, click the "Start" button of the Win11 system, and then select the "Settings" application in the pop-up menu. You can also use the shortcut "Win+I" to open "Settings". Step 2: Select "System" In the Settings app, you will see multiple options. Please click the "System" option to enter the system settings page. Step 3: Select "About" In the "System" settings page, you will see multiple sub-options. Please click

As a programmer, I get excited about tools that simplify the coding experience. With the help of artificial intelligence tools, we can generate demo code and make necessary modifications as per the requirement. The newly introduced Copilot tool in Visual Studio Code allows us to create AI-generated code with natural language chat interactions. By explaining functionality, we can better understand the meaning of existing code. How to use Copilot to generate code? To get started, we first need to get the latest PowerPlatformTools extension. To achieve this, you need to go to the extension page, search for "PowerPlatformTool" and click the Install button

Title: How to configure and install FTPS in Linux system, specific code examples are required. In Linux system, FTPS is a secure file transfer protocol. Compared with FTP, FTPS encrypts the transmitted data through TLS/SSL protocol, which improves Security of data transmission. In this article, we will introduce how to configure and install FTPS in a Linux system and provide specific code examples. Step 1: Install vsftpd Open the terminal and enter the following command to install vsftpd: sudo

MyBatisGenerator is a code generation tool officially provided by MyBatis, which can help developers quickly generate JavaBeans, Mapper interfaces and XML mapping files that conform to the database table structure. In the process of using MyBatisGenerator for code generation, the setting of configuration parameters is crucial. This article will start from the perspective of configuration parameters and deeply explore the functions of MyBatisGenerator.
