导航:首页 > 编程语言 > java判断浏览器

java判断浏览器

发布时间:2021-03-05 16:26:40

Ⅰ 如何用java判断浏览器类型

1,从request里可以获取用户浏览器类型,

具体操作见例子:

Enumeration e = request.getHeaderNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = request.getHeader(name);
System.out.println(name + " = " + value);
}

这样可以遍历从客户端传来内的所有头信息容:
request.getHeaders("User-Agent");

获取User-Agent (客户端的类型,一般用来区分不同的浏览器)。

2,获取操作系统信息
操作系统信息 String osName = System.getProperty("os.name" );
操作系统版本 String osVersion=System.getProperty("os.version");

Ⅱ java如何判断是pc浏览器还是手机浏览器

functionIsPC(){
权varuserAgentInfo=navigator.userAgent;
varAgents=["Android","iPhone",
"SymbianOS","WindowsPhone",
"iPad","iPod"];
varflag=true;
for(varv=0;v<Agents.length;v++){
if(userAgentInfo.indexOf(Agents[v])>0){
flag=false;
break;
}
}
returnflag;

}

Ⅲ java怎么判断使用的浏览器是火狐浏览器

Java判断浏览器版本与类型

publicstaticvoidmain(String[]args){
Stringagent=request.getHeader("User-Agent").toLowerCase();
System.out.println(agent);
System.out.println("浏览器版本:"+getBrowserName(agent));
}

/**
*获取浏览器版本信息
*@Title:getBrowserName
*@data:2015-1-12下午05:08:49
*@author:wolf
*
*@paramagent
*@return
*/
publicStringgetBrowserName(Stringagent){
if(agent.indexOf("msie7")>0){
return"ie7";
}elseif(agent.indexOf("msie8")>0){
return"ie8";
}elseif(agent.indexOf("msie9")>0){
return"ie9";
}elseif(agent.indexOf("msie10")>0){
return"ie10";
}elseif(agent.indexOf("msie")>0){
return"ie";
}elseif(agent.indexOf("opera")>0){
return"opera";
}elseif(agent.indexOf("opera")>0){
return"opera";
}elseif(agent.indexOf("firefox")>0){
return"firefox";
}elseif(agent.indexOf("webkit")>0){
return"webkit";
}elseif(agent.indexOf("gecko")>0&&agent.indexOf("rv:11")>0){
return"ie11";
}else{
return"Others";
}
}
原文链接:http://blog.csdn.net/wolf_childan/article/details/42644749

Ⅳ java代码判断浏览器是否ie11

你跟前台交互下,js获取过来的就够了,这么纠结,方法一大堆

Ⅳ 请问如何用java语言判断判断360浏览器为兼容模式和极速模式,不用js脚本语言。。求指导

其实360的兼容模式就是调用了IE内核,判断浏览器类型的代码应该足可以使用了,至版于你要权求不用JS脚本,用JAVA这大概实现不了,你浏览器内核的切换,只有前端脚本才有可能知道,后台代码不可能第一时间知道,要知道也是前端告诉后端才对啊

Ⅵ java后台如何判断是否打开是否是ie或是火狐

通过request头信息是可以获得浏览器的agent信息的,然后直接将firefox或者inter exploer作为关键词进行模糊匹配即可实现判断用户浏览器类型的需求。

Ⅶ java是否能够检测浏览器是否打开,并进行操作

如果你用javaFx这种布局一个webview这种的是可以做到的。
如果你回是监听系统的ie、谷歌、火狐什么的java没有提答供相关的api。
你这个其实都有点木马的性质了,监听浏览器是否打开,windows有提供的系统级api,不过是c++语言,你可以通过jni或jna来调用。但是浏览器是不会提供外部操作的api的(这个相当于主动提供漏洞了),除非你能找到它的安全漏洞

Ⅷ java怎么判断是pc浏览器还是手机浏览器

function IsPC() {
var userAgentInfo = navigator.userAgent;
var Agents = ["Android", "iPhone",
"SymbianOS", "Windows Phone",
"iPad", "iPod"];
var flag = true;
for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;

}

Ⅸ 怎么用java判断浏览器类型

1,从request里可以获取用户浏览器类型,

具体操作见例子:

Enumeration e = request.getHeaderNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = request.getHeader(name);
System.out.println(name + " = " + value);
}

这样可以遍历从客户端传内来容的所有头信息:
request.getHeaders("User-Agent");

获取User-Agent (客户端的类型,一般用来区分不同的浏览器)。

2,获取操作系统信息
操作系统信息 String osName = System.getProperty("os.name" );
操作系统版本 String osVersion=System.getProperty("os.version");

Ⅹ java 怎么判断ie浏览器的版本

JavaScript是前端开发的主要语言,我们可以通过编写JavaScript程序来判断浏览器的类型及版本。JavaScript判断浏览
器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的userAgent属性来判断的。在许多情况下,值判断出浏览器
类型之后,还需判断浏览器版本才能处理兼容性问题,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道。
navigator对象

包含了正在使用的 Navigator 的版本信息。 JavaScript 客户端运行时刻引擎自动创建 navigator 对象。 详细的介绍可以参照【】,这里只是简单说下其属性和方法。

属性概览

appCodeName 指定浏览器的代码名称。

appName 指定浏览器的名称。

appVersion 指定 Navigator 的版本信息。

language 标明正在使用的 Navigator 的翻译语种。

mimeTypes 客户端支持的所有 MIME 类型数组。

platform 标明了 Navigator 编译适合的机器类型。

plugins 客户端已安装的所有插件数组。

userAgent 指定了用户代理头。

方法概览

javaEnabled 测试是否允许 Java。

plugins.refresh 使新安装的插件有效,并可选重新装入已打开的包含插件的文档。

preference 允许一个已标识的脚本获取并设置特定的 Navigator 参数。

taintEnabled 指定是否允许数据污点。

简单标注一下,判断浏览器的名称可以根据appName判断,例如:

var ie=navigator.appName == “Microsoft Internet Explorer” ? true : false;

浏览器的特征及其userAgent

关于各种浏览器的特征及其userAgent,可以参照【】,这篇文章介绍的比较详细。

简单罗列如下:

IE

只有IE支持创建ActiveX控件,因此她有一个其他浏览器没有的东西,就是ActiveXObject函数。

而IE各个版本典型的userAgent如下:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)

其中,版本号是MSIE之后的数字。

Firefox

Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小(IE对应的中是getBoundingClientRect函数)。

这是Firefox独有的,判断它即可知道是当前浏览器是Firefox。

Firefox几个版本的userAgent大致如下:

Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1

Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3

Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12 其中,版本号是Firefox之后的数字。

Opera

Opera提供了专门的浏览器标志,就是window.opera属性。

Opera典型的userAgent如下:

Opera/9.27 (Windows NT 5.2; U; zh-cn)

Opera/8.0 (Macintosh; PPC Mac OS X; U; en)

Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0

其中,版本号是靠近Opera的数字。

Safari

Safari浏览器中有一个其他浏览器没有的openDatabase函数,可做为判断Safari的标志。

Safari典型的userAgent如下:

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13

Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3

其版本号是Version之后的数字。

Chrome

Chrome有一个MessageEvent函数,但Firefox也有。不过,好在Chrome并没有Firefox的getBoxObjectFor函数,根据这个条件还是可以准确判断出Chrome浏览器的。

目前,Chrome的userAgent是:

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13

其中,版本号在Chrome之后的数字。

有趣的是,Chrome的userAgent还包含了Safari的特征,也许这就是Chrome可以运行所有Apple浏览器应用的基础吧。

Navigator

目前,Navigator的userAgent是:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080219 Firefox/2.0.0.12 Navigator/9.0.0.6

其中,版本号在Navigator之后的数字。

通过观察以上各浏览器的差异,可以用JavaScript区分出各浏览器的,但没有判断是否兼容w3c标准,看了看ExtJs的源代码,发现其中就有对浏览器类型以及版本和操作系统的判断。

源码如下:

ua = navigator.userAgent.toLowerCase(),

check = function(r){

return r.test(ua);

},

isStrict = patMode == “CSS1Compat”,

isOpera = check(/opera/),

isChrome = check(/chrome/),

isWebKit = check(/webkit/),

isSafari = !isChrome && check(/safari/),

isSafari3 = isSafari && check(/version\/3/),

isSafari4 = isSafari && check(/version\/4/),

isIE = !isOpera && check(/msie/),

isIE7 = isIE && check(/msie 7/),

isIE8 = isIE && check(/msie 8/),

isGecko = !isWebKit && check(/gecko/),

isGecko3 = isGecko && check(/rv:1\.9/),

isBorderBox = isIE && !isStrict,

isWindows = check(/windows|win32/),

isMac = check(/macintosh|mac os x/),

isAir = check(/adobeair/),

islinux = check(/linux/)

关于patMode

IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Standards Mode下对于盒模型的解释和其他的标准浏览器是一样,但在Quirks Mode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是Quirks Mode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。

patMode正好派上用场,它有两种可能的返回值:BackCompat和CSS1Compat,对其解释如下:

BackCompat Standards-compliant mode is not switched on. (Quirks Mode)

CSS1Compat Standards-compliant mode is switched on. (Standards Mode)

在实际的项目中,我们还需要在获取浏览是否IE,这样就可以得到IE的渲染模式了。在ExtJs中的代码:isBorderBox=isIE&&!isStrict。

当文档有了标准声明时, patMode 的值就等于 “CSS1compat”, 因此, 我们可以根据 patMode 的值来判断文档是否加了标准声明

var height = patMode==”CSS1Compat” ? document.documentElement.clientHeight : document.body.clientHeight;

阅读全文

与java判断浏览器相关的资料

热点内容
打开网络映射存储为什么特别慢 浏览:157
苹果手机摔弯了还能修吗 浏览:532
华中数控编程怎么换 浏览:874
word2007画图工具在哪里 浏览:565
广播式网络由什么组成 浏览:538
福州老用户升级4g校园套餐 浏览:644
jstr加点击事件 浏览:652
搜狗输入法最老版本下载地址 浏览:145
玛卡编程怎么样 浏览:302
怎么编程伺服器编码 浏览:109
什么是机密文件 浏览:258
网站收录量低应该如何解决 浏览:978
飞跃贷app官网 浏览:337
js正则表达式全为整数 浏览:561
在哪里免费下载大数据 浏览:218
linux怎么做视频网站 浏览:949
安卓舰娘登入不进去 浏览:145
ak47龙鳞升级成什么 浏览:256
联通sim卡怎么升级4g 浏览:120
linux大日志文件 浏览:974

友情链接