2010-02-05 46 views

回答

10

http://api.jquery.com/jQuery.browser/

isIE = $.browser.msie; 

$.browser成爲過時的同時,但尚未取消激活。應該使用$.support。例如:$.support.boxModel

+0

jquery +1 - 爲您節省跨瀏覽器支持的麻煩! – AdaTheDev 2010-02-05 23:07:37

+0

我添加了一個帖子來提供更多信息,但這真的是最好的答案。 – 2010-02-05 23:10:22

+0

用戶代理字符串很容易僞造,至少在Opera和Safari中是如此。 – 2010-02-05 23:14:34

0
<html> 
<head> 
</head> 
<body> 
<script type="text/javascript"> 
    alert(navigator.appName); 
</script> 
</body> 
</html> 

這來回復以 '網景'(適用於Firefox)或 'Microsoft Internet Explorer中'(當我試圖IE7 - 沒有嘗試過其他平臺)

請參見下面的鏈接瞭解更多信息, 例如。

http://www.javascriptkit.com/javatutors/navigator.shtml

而這裏的同樣的事情用「如果」 /「其他」的結構。

<html> 
<head> 
</head> 
<body> 
<script type="text/javascript"> 
    if (navigator.appName=="Microsoft Internet Explorer") { 
     alert("This is IE!"); 
    } 
    else { 
     alert("This is not IE!"); 
    } 
</script> 
</body> 
</html> 

其實你應該選擇另一個帖子:堅持一個衆所周知的圖書館,如jQuery的整理所有的邊緣情況。

+0

我不認爲你想發送一個警報窗口。 – joejoeson 2010-02-05 23:06:12

+0

@Jeremy:我不認爲這是關鍵。 使用警報讓OP可以嘗試它並查看appName的值在不同的瀏覽器中。然後他可以用真實代碼使用該變量。 – 2010-02-05 23:12:35

+0

是的,警報只是一個例子 - 但爲了清晰起見,現在我已經包含了一個'if'/'else'。 我想在任何情況下,OP實際上都想要jQuery。 (我原本沒有注意到標籤)。 – monojohnny 2010-02-05 23:14:13

1

儘管這不是「最簡單」的方式,但這裏是幫助瀏覽器檢測的非常好的一頁。

http://www.w3schools.com/js/js_browser.asp

耶對W3C。

+0

+1爲w3schools - 網絡的真正奇蹟之一! – monojohnny 2010-02-05 23:15:15

+0

嗯,鏈接不起作用,目前... – 2010-02-05 23:17:44

+0

@Marcel - 適用於我 - 您確定該網站並未阻止您查看該頁面,因爲您擁有僞造的User-Agent字符串? :-) – monojohnny 2010-02-05 23:28:00

10

我不會通過瀏覽器嗅探(即直接或通過Javascript框架)來做到這一點,因爲用戶代理字符串很容易被僞造(在這些情況下,這取決於JavaScript,可以關閉它)。

在這種情況下(IE與否),我會在您的HTML中使用conditional comments。無論JavaScript是否啓用,他們都會一直工作。

+0

從來不知道這些 - 有趣的+1。它確實可以僞造一個代理字符串(事實上,Opera曾經有一個可以僞裝成IE的選項):但是,瀏覽器嗅探的要點是提供用戶瀏覽器的預期功能:如果他們說謊是,那麼它的瞭望 - 我完全同意你關於javascript的觀點 - 可能最好的路線(雖然還不完美)是檢查服務器端。 [我認爲這些條件性評論是?] – monojohnny 2010-02-05 23:21:47

+0

但是,如果你不想使用JavaScript,瀏覽器之間沒有很大的區別。對於CSS,你會使用Css瀏覽器依賴黑客。 – powtac 2010-02-05 23:24:50

+0

@powtac - 假設大多數人使用'現代'瀏覽器,那麼我會同意你的看法,但是對於更老的瀏覽器,對於應該呈現的HTML還是有不同的想法(或者甚至有他們的特殊標籤'' )。 – monojohnny 2010-02-05 23:30:28

相關問題