導航:首頁 > 編程語言 > 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判斷瀏覽器相關的資料

熱點內容
別克怎麼用原廠電腦編程 瀏覽:125
半月談app是什麼意思 瀏覽:788
廣州正大數據恢復 瀏覽:80
什麼app軟體上買汽車減震器 瀏覽:375
在線免費的網站你懂得 瀏覽:611
linux服務加入開機啟動 瀏覽:115
手機百度app如何上傳文件 瀏覽:672
韓劇電影版 瀏覽:887
瀟湘書院sp 瀏覽:324
林正英下載 瀏覽:511
帶著智能手機闖盪異世界 小說 瀏覽:901
男同情愛電影 瀏覽:913
vb監控文件夾 瀏覽:850
台灣丈夫電影 瀏覽:660
戴爾筆記本為什麼連不上無線網路 瀏覽:582
台灣的電影電視劇都用什麼網站 瀏覽:238
米思齊編程土壤濕度感測器怎麼用 瀏覽:208
大寸度愛情電影 瀏覽:213
2015年全球大數據總量 瀏覽:63
建設工程人員配置要求在哪個文件 瀏覽:157

友情鏈接