getBrowser : function(){
var browser = {
msie: false, firefox: false, opera: false, safari: false,
chrome: false, netscape: false, appname: 'unknown', version: 0
},
userAgent = window.navigator.userAgent.toLowerCase();
if ( /(msie|firefox|opera|chrome|netscape)\D+(\d[\d.]*)/.test( userAgent ) ){
browser[RegExp.$1] = true;
browser.appname = RegExp.$1;
browser.version = RegExp.$2;
} else if ( /version\D+(\d[\d.]*).*safari/.test( userAgent ) ){ // safari
browser.safari = true;
browser.appname = 'safari';
browser.version = RegExp.$2;
}
return browser.appname + browser.version;
}
对象/特征检测法
该方法是一种判断浏览器能力(而非浏览器的确切型号)的通用方法。大部分JS专家认为这个方法最合适,因为他们认为按照该方法所编写的脚本是经得起未来考验的。
<span style="COLOR: green">//获取IE浏览器的版本号</span>
<span style="COLOR: green">//返回数值,显示IE的主版本号</span>
<span style="COLOR: blue">function </span>getIEVer() {
<span style="COLOR: blue">var </span>ua = navigator.userAgent; <span style="COLOR: green">//获取用户端信息</span>
<span style="COLOR: green"> </span><span style="COLOR: blue">var </span>b = ua.indexOf(<span style="COLOR: #a31515">"MSIE "</span>); <span style="COLOR: green">//检测特殊字符串"MSIE "的位置</span>
<span style="COLOR: green"> </span><span style="COLOR: blue">if </span>(b <pre style="PADDING-RIGHT: 0px! important; PADDING-LEFT: 12px! important; PADDING-BOTTOM: 0px! important; MARGIN: 0em; COLOR: black; WORD-BREAK: normal; LINE-HEIGHT: 18px; PADDING-TOP: 0px! important; BACKGROUND-COLOR: #f7f7ff! important; WORD-WRAP: break-word"> <span style="COLOR: blue">return </span>0;
}
<span style="COLOR: blue">return </span>parseFloat(ua.substring(b + 5, ua.indexOf(<span style="COLOR: #a31515">";"</span>, b))); <span style="COLOR: green">//截取版本号字符串,并转换为数值</span>
}
alert(getIEVer()); <span style="COLOR: green">//返回数值8(我的IE8)</span>
如果更关注浏览器的能力而不在乎它实际的身份,就可以使用这种方法。
user-agent字符串检测法
user-agent字符串提供了关于Web浏览器的大量信息,包括浏览器的名称和版本。
<span style="COLOR: blue">var </span>ua = navigator.userAgent.toLowerCase(); <span style="COLOR: green">//获取用户端信息</span>
<span style="COLOR: blue">var </span>info = {
ie: /msie/.test(ua) && !/opera/.test(ua), <span style="COLOR: green">//匹配IE浏览器</span>
<span style="COLOR: green"> </span>op: /opera/.test(ua), <span style="COLOR: green">//匹配Opera浏览器</span>
<span style="COLOR: green"> </span>sa: /version.*safari/.test(ua), <span style="COLOR: green">//匹配Safari浏览器</span>
<span style="COLOR: green"> </span>ch: /chrome/.test(ua), <span style="COLOR: green">//匹配Chrome浏览器</span>
<span style="COLOR: green"> </span>ff: /gecko/.test(ua) && !/webkit/.test(ua) <span style="COLOR: green">//匹配Firefox浏览器</span>
};
(info.ie) && alert(<span style="COLOR: #a31515">"IE浏览器"</span>);
(info.op) && alert(<span style="COLOR: #a31515">"Opera浏览器"</span>);
(info.sa) && alert(<span style="COLOR: #a31515">"Safari浏览器"</span>);
(info.ff) && alert(<span style="COLOR: #a31515">"Firefox浏览器"</span>);
(info.ch) && alert(<span style="COLOR: #a31515">"Chrome浏览器"</span>);
通常我们做得最多的,就是判断是否是IE了,其它几种浏览器一般都会符合标准.有些客户只需要符合IE和FF就已经满足了.那么我们可以这样做:
<span style="COLOR: blue">var </span>isIE = (navigator.appName == <span style="COLOR: #a31515">"Microsoft Internet Explorer"</span>);
判断IE远远不止上面一种方法,可以使用IE更多特有的东西,如:window.ActiveXObject,document.all等,这些都属于对象/特征检测法了!通常要在不同的浏览器上写不同的样式(因为IE样式解析也各有不同),那就得判断版本了.可以这样做
<span style="COLOR: green">//获取IE浏览器的版本号</span>
<span style="COLOR: green">//返回数值,显示IE的主版本号</span>
<span style="COLOR: blue">function </span>getIEVer() {
<span style="COLOR: blue">var </span>ua = navigator.userAgent; <span style="COLOR: green">//获取用户端信息</span>
<span style="COLOR: green"> </span><span style="COLOR: blue">var </span>b = ua.indexOf(<span style="COLOR: #a31515">"MSIE "</span>); <span style="COLOR: green">//检测特殊字符串"MSIE "的位置</span>
<span style="COLOR: green"> </span><span style="COLOR: blue">if </span>(b <pre style="PADDING-RIGHT: 0px! important; PADDING-LEFT: 12px! important; PADDING-BOTTOM: 0px! important; MARGIN: 0em; COLOR: black; WORD-BREAK: normal; LINE-HEIGHT: 18px; PADDING-TOP: 0px! important; BACKGROUND-COLOR: #f7f7ff! important; WORD-WRAP: break-word"> <span style="COLOR: blue">return </span>0;
}
<span style="COLOR: blue">return </span>parseFloat(ua.substring(b + 5, ua.indexOf(<span style="COLOR: #a31515">";"</span>, b))); <span style="COLOR: green">//截取版本号字符串,并转换为数值</span>
}
alert(getIEVer()); <span style="COLOR: green">//返回数值7</span>
检测操作系统:
<span style="COLOR: blue">var </span>isWin = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Win"</span>) != -1); <span style="COLOR: green">//如果是Windows系统,则返回true</span>
<span style="COLOR: blue">var </span>isMac = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Mac"</span>) != -1); <span style="COLOR: green">//如果是Macintosh系统,则返回true</span>
<span style="COLOR: blue">var </span>isUnix = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"X11"</span>) != -1); <span style="COLOR: green">//如果是Unix系统,则返回true</span>
<span style="COLOR: blue">var </span>isLinux = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Linux"</span>) != -1); <span style="COLOR: green">//如果是Linux系统,则返回true</span>
文章大部分内容来自于《Javascript征途》

当Windows11任务栏溢出功能停止工作时,用户将丢失重要的自定义选项。这是因为该功能允许您将尽可能多的应用程序添加到任务栏并轻松启动它们。虽然这个问题可能令人沮丧,但并不是最难解决的。在本综合指南中,我们准备了万无一失的方法,以使任务栏溢出功能再次正常工作。为什么任务栏溢出在Windows11上不起作用?正如用户报告的那样,有几个因素可能导致任务栏溢出在Windows11上不起作用。以下是一些值得注意的原因:过时的PC:过时的操作系统是此问题的主要原因。如果您使用高于Windows11预览体

一款基于Windows11最新版本23H2的轻量化系统「Tiny112311」正式推出,提供了更精简的系统体验。该系统去除了许多不必要的组件和高硬件要求,使得安装后的占用空间仅需约8GB。Tiny112311集主要功能于一身作为基于最新Windows11版本23H2的产物,Tiny112311包含了微软引入的所有新功能,包括Copilot功能(需通过winget下载微软Edge,因为没有预装浏览器)、原生RAR支持、重新设计的音量滑块、设定应用中的RGB控制等。与之前的Tiny11版本相比,23

一些朋友在下载安装完win11系统后,发现自己的win11版本显示的却是win10,这可能是因为我们下载了错误的win11系统,也可能是因为微软win11自身的原因,下面就跟着小编一起来看看吧。win11安装后显示版本是win10怎么办一、下载了错误的win111、如果我们下载了错误的win11系统,就可能会在安装后显示win10。2、因此大家可以重新下载一个win11进行覆盖安装。3、我们不需要重新退回win10,只需要装载该系统,然后运行“setup”安装程序进行安装就可以了。二、系统错误1

3月27号,Stability AI的创始人兼首席执行官Emad Mostaque在一条推文中宣布,Stable Diffusion XL 现已可用于公开测试。以下是一些事项:“XL”不是这个新的AI模型的官方名称。一旦发布稳定性AI公司的官方公告,名称将会更改。与先前版本相比,图像质量有所提高与先前版本相比,图像生成速度大大加快。示例图像让我们看看新旧AI模型在结果上的差异。Prompt: Luxury sports car with aerodynamic curves, shot in a

PHP8.0是当前最新版本的PHP编程语言。一项重要的更新是对匿名函数的改进和增强。匿名函数(也称为闭包)是一种特殊类型的函数,可以在运行时动态创建并传递给其他函数或存储在变量中。在PHP中,匿名函数对于高级编程和Web开发至关重要。PHP8.0提供了一些新的语法和功能,可以使匿名函数更加灵活和易于使用。其中一些更新如下:函数参数的类型声明在PHP8.0中,

不少用户在使用电脑系统的时候都会比较纠结不知道该怎么选择win101909和22h2这两个版本,其实从版本迭代来看,建议是选择22H2更好,因为这个可以看成是一个版本更新。win101909和22h2哪个好答:win1022h2更好。Windows1022H2相较于先前的版本1909而言,虽然只是些许的更新改进,但这实际上算是一种微小的突破性进步。1、1909版乃是Windows10的第九款迭代版本,该产品在2019年的11月份正式浮出水面。2、此版本为功能升级,并非全新的Windows10版本

Microsoft计划在Windows中禁用传输层安全性(TLS)协议版本1.0和1.1。该公司于1年2023月日在其技术社区网站上宣布了这一消息。这两个协议可以追溯到1999年(TLS1.0)和2006年(TLS1.1),此后被新版本TLS1.2和TLS1.3超越。Microsoft指出,在较旧的协议版本中发现了安全问题,并且“互联网标准和监管机构已弃用或不允许TLS版本1.0和1.1作为响应。多年来,TLS1.0和1.1的使用量显着下降,Microsoft认为禁用这两种协议的时候到了。Mic

许多用户在操作使用win10系统的时候会遇到一些系统版本比较慢或者卡顿,这个时候我们就可以选择下面几款非常流畅好用的系统版本了Windows10哪个版本最稳定好用1、win10通用版系统优化了不同电脑硬盘的使用,提高了兼容性。这样可以提高用户使用时的操作手感和各种流畅度2、win10家庭纯净版不用担心自动激活的系统不适合您的计算机。安装简单、占地面积小是该系统的特点3、win10轻量精简版在使用过程中,它会自动关闭特别大的应用程序进程,以减轻硬件的负担,从而使计算机保持在非常流畅的状态。4、wi


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

Dreamweaver CS6
视觉化网页开发工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具