我有一個js文件,並且只想在瀏覽器爲IE 8時運行一些代碼。有沒有辦法可以做到這一點?如何爲IE瀏覽器運行腳本8
現在我只有這一點,但它是所有的ie瀏覽器:
if ($.browser.msie) {
//do stuff for IE 8
}
我有一個js文件,並且只想在瀏覽器爲IE 8時運行一些代碼。有沒有辦法可以做到這一點?如何爲IE瀏覽器運行腳本8
現在我只有這一點,但它是所有的ie瀏覽器:
if ($.browser.msie) {
//do stuff for IE 8
}
瀏覽器特定的代碼是幾乎從來沒有一個好主意。但是,如果您必須這樣做,則可以將代碼放入條件註釋中。
http://www.positioniseverything.net/articles/cc-plus.html
<!--[if IE 8]>
<script type="text/javascript">
// this is only executed for IE 8
</script>
<![endif]-->
見Browser detection in JavaScript? 和http://modernizr.com
這裏是一個簡短的回答(EST):
if (navigator.userAgent.match(/MSIE 8/) !== null) {
// do something in IE8
}
您可以評論您爲什麼低估了這一點,以便我能從您那裏學到一些東西嗎?謝謝。 –
我不是那個低調的人。這是諷刺的,因爲我在你的鏈接中找到了我的答案。請看我的答案。謝謝 –
我不知道是誰做的,爲什麼......只要我從中學到一些東西,我就不介意downvote。無論如何,我編輯一個簡短的純JavaScript代碼片段應該工作。 –
你能在頭重定向頁面做一個電話如果它小於IE9?我發現自己經常爲我的客戶使用IE6-10的混合物。
在文件頭我打電話,
<!--[if IE 7]> <link rel="()" type="()" href="(Your link here.)"><![endif]-->
你可以看看另一種選擇是一個墊片或polyfil。互聯網上有很多可以幫助縮小現代網頁設計和舊版瀏覽器之間的差距。 一個例子是Modernizr。
你可以用條件註釋做(由https://stackoverflow.com/a/10965091/1878731):
<!--[if IE 8 ]> <html class="ie8"> <![endif]-->
if ($('html').is('.ie8')) {
...
}
或不伴HTML搞亂(由http://en.wikipedia.org/wiki/Conditional_comment):
<script>
/*@cc_on
@if (@_jscript_version == 5.8) { // IE8 detected
// do something
}
@*/
</script>
你可以這樣做:
if (navigator.userAgent.indexOf('MSIE 8.0') !== -1) {
// this clause will only execute on IE8
}
可以使用document.documentMode獲得IE的版本。
switch(document.documentMode)
{
case 8:
//do something with IE8
break;
case 9:
//do something with IE9
break;
case 10:
//do something with IE10
break;
case 11:
//do something with IE11
break;
default:
console.log('Other browsers...');
}
對於文檔,請參閱here
$ .browser已經過時,所以你不能使用新的jQuery版本的對象屬性,以支持這一點,你必須使用jQuery的遷移plugin.Here是 鏈接。 https://github.com/jquery/jquery-migrate/#readme
嘗試使用這樣
<script type="text/javascript">
if(/MSIE \d|Trident.*rv:/.test(navigator.userAgent))
document.write('<script src="somescript.js"><\/script>');
</script>
爲什麼你需要檢測IE8特別? – Blender
我的一些jquery移動代碼不適用於IE 8(但適用於IE 9和10),所以如果它是IE 8,我想重定向到不同的頁面。謝謝 –
這也不適用於新版本的jQuery,因爲他們刪除了版本1中的$ .browser。9 – Ian