我是jquery的新手,想知道:是一種檢測瀏覽器是否爲Internet Explorer 6或更低版本的簡單方法?在jQuery中檢測Internet Explorer 6或更低版本
回答
像這樣簡單:
if($.browser.msie && $.browser.version=="6.0") alert("Im the annoying IE6");
更新
請注意,$.browser是removed from jQuery 1.9
如果您仍然需要使用$ .browser jQuery的1.9(或其他不推薦使用的函數),請嘗試jQuery-migrate(https://github.com/jquery/jquery-migrate/ - http://code.jquery.com/jquery-migrate-1.2.1.js)
jQuery檢查功能,而不是「瀏覽器」。也就是說,您可以使用jQuery.support方法來檢測用戶瀏覽器的功能。
不贊成的方法(不要使用)
- $ .browser
- $ .browser.version
- $ .boxModel
http://docs.jquery.com/Utilities/jQuery.support會給你一個總結其特點是受哪些瀏覽器支持。以這些數據爲例,您將開發一對條件檢查來確定正在使用的瀏覽器是否是您的目標瀏覽器。
如果用戶想要檢測該功能,但是沒有jQuery.support方法來檢查:「瀏覽器添加哈希到瀏覽器歷史記錄「或類似的,所以這是更適當的檢測瀏覽器版本,而不是」它支持.cssFloat和.htmlSerialized? – ebynum 2010-08-24 19:03:02
http://docs.jquery.com/Utilities/jQuery.browser.version是如何
編輯:從道格拉斯
http://api.jquery.com/jQuery.browser/#jQuery.browser.version
我的意思是,如果你有舊版本不是最新的1.3修正鏈接...
而且,另一個好處是,使用JQuery,你不應該擔心版本。 JQuery的功能測試和處理所有malarky爲你。擔心版本和平臺是相當1999年
嘗試了這一點:
jQuery.each(jQuery.browser, function(i, val) {
$("<div>" + i + " : <span>" + val + "</span>")
.appendTo(document.body);
});
如果您需要更多信息請參閱本:
很不錯的方法來檢測IE是:
if ('v'=='\v') {
welcome to IE))
}
不幸的是它無法識別它的版本但它並不總是祕密。
您也可以直接詢問IE。
<!--[if lte IE 6]>
<script type="text/javascript">
var isRunningIE6OrBelow = true;
</script>
<![endif]-->
而且,換個好點的是,使用jQuery,你不應該擔心的版本。
如果您使用jquery修復IE6 css渲染錯誤,那並沒有幫助。
「雖然這是不可能jQuery.browser 將被刪除,竭力採用 jQuery.support和適當的功能 檢測應作出。」
所以我說繼續使用它。他們必須保持與仍然使用用戶代理嗅探方法的腳本的向後兼容性。
我經常檢查瀏覽器的版本。 .support方法非常棒,但是當您需要隱藏選擇內容時,它並沒有真正的幫助。沒有「支持選擇窗口控件」。你只需要檢查瀏覽器版本,所以我會說你可以在.support方法上犯錯,並在必要時使用.browser。
只是爲了讓人們知道 $ .browser.msie & & /6.0/.test(navigator.userAgent) 是不可靠的,我來這個問題尋找答案與JQuery的bgiframe問題這在我的機器上壞掉了,因爲我在navigator.userAgent字符串中有'Media Center PC 6.0'。我現在編輯源使用$ browser.version測試。
它愚蠢的JQuery不贊成這些瀏覽器測試,因爲它們可能是醜陋的,因爲它們是處理瀏覽器生態系統醜陋的狀態所必需的。
if ($.browser.msie && parseInt($.browser.version, 10) <= 6) {
alert("I'm not dead yet!");
}
- 更新
如果ActiveXObject
存在,XMLHttpRequest
不,這是IE6:
/* IE6 Check */
(!!window.ActiveXObject && !window.XMLHttpRequest) ? true : false;
在IE7中,這將是:
(!!window.ActiveXObject && !!window.XMLHttpRequest) ? true: false;
個
參考
- 1. 多個Internet Explorer版本瀏覽器測試(Internet Explorer 6-8)?
- 2. 有一些準備/默認代碼阻止Internet Explorer 6或更低版本?
- 3. PHP檢測到低於版本10的Internet Explorer
- 4. 使用Modernizr的檢測Internet Explorer版本
- 5. 使用VB6檢測Internet Explorer版本
- 6. 僅在Internet Explorer版本10或更高版本上支持在64位Internet Explorer中測試Web應用程序
- 7. $。在Internet Explorer 8及更低版本中出現AJAX錯誤
- 8. 檢測Internet Explorer中的狀態更改
- 9. VML Internet Explorer版本
- 10. Internet Explorer(6及更高版本)緩存和臨時文件
- 11. Internet Explorer如何檢測jre?
- 12. 如何測試Internet Explorer版本是否爲版本7或版本8?
- 13. 檢測Linux版本5或6
- 14. CSS轉換不能在Internet Explorer 7和更低版本中工作
- 15. JQuery 1.2.6或更低版本的圖庫
- 16. 的Internet Explorer 8和Internet Explorer 6並排
- 17. 用javascript檢測完整版本的Internet Explorer?
- 18. 如何檢測安裝了哪個版本的Internet Explorer?
- 19. 檢測遠程計算機上的Internet Explorer版本
- 20. Internet Explorer版本11企業模式檢測
- 21. 在Internet Explorer中檢測DOM修改
- 22. Internet Explorer 9對象檢測
- 23. 的Internet Explorer 11的檢測
- 24. Internet Explorer版本說明:CO
- 25. Internet Explorer的6/7
- 26. jQuery的高度()問題與Internet Explorer 6
- 27. Iframe jQuery不會在Internet Explorer中執行[所有版本]
- 28. jQuery Gallery將無法在任何版本的Internet Explorer中工作
- 29. Internet Explorer版本6和7 - 最小寬度問題
- 30. 要測試Internet Explorer的JavaScript
$ .browser已被棄用。請參閱http://stackoverflow.com/questions/1944169/detecting-ie-using-jquery更多詳細信息 – 2013-01-17 13:37:02