2011-10-12 44 views
3

我是JS新手,每當有人通過Interent Explorer瀏覽器進入我的網站時,我需要檢測它。所以,我做了下面的代碼,我創建的div正在其他Web瀏覽器上編寫腳本,我認爲問題出在.getElementById之類。 所以說話後,下面的代碼:JS中非常基本的東西

<html> 
<head> 
<script type="text/javascript"> 
var browserName=navigator.appName; 
if (browserName=="Microsoft Internet Explorer") 
{ 
document.getElementById("example"); 
} 
</script> 

</head> 
<body> 
<div id ="example">You're Using Interent Explorer. </div> 
</body> 
</html> 

非常感謝的助手。

+0

你沒有對你正在尋找的元素做任何事......這個函數的意圖是什麼?更重要的是,你爲什麼要檢測IE?這可以用HTML註釋,即'' – Fosco

回答

6

這些HTML註釋只能由Internet Explorer

<body> 
<!--[if IE]> 
    <div id ="example">You're Using Interent Explorer. </div> 
<![endif]--> 
</body> 

大部分是對CSS的時候呈現,因爲你可以針對IE 6,7,8等或者比IE 7更大:

<!--[if IE 7]> 
     <link rel="stylesheet" type="text/css" href="all-ie-only.css" /> 
<![endif]--> 

Example

+0

+1這比使用jQuery更好。 – Fosco

+0

@Fosco:事實上在這裏沒有人使用jQuery :) – pimvdb

+0

偷走了我的想法哈哈,偉大的思想家都認爲。 –

4

1首先,您應該隱藏div(display:none)。

2您需要在腳本中使用div實際執行某些操作(fiddle)。

<html> 
<head> 
<script type="text/javascript"> 
    window.onload = function(){ 
     if (navigator.appName === "Microsoft Internet Explorer") 
     { 
      document.getElementById("example").style.display = "block"; 
     } 
    } 
</script> 

</head> 
<body> 
<div id ="example" style="display:none;">You're Using Interent Explorer. </div> 
</body> 
</html> 

否則,你只需要添加的格上下文(fiddle

window.onload = function(){ 
    if (navigator.appName === "Microsoft Internet Explorer") 
    { 
     document.body.appendChild(
      document.createElement("div") 
     ).appendChild(
      document.createTextNode("You're Using Interent Explorer")); 
    } 
} 
+0

你還需要對文件運行準備或腳本將在div之前運行是 – scrappedcola

+1

的頁面上完成或者你可能在你的條件標籤在IE特定的CSS加載顯示/隱藏該div。 –

+0

@antisainty非常感謝,我想我理解了這個問題,但它仍然無法正常工作,請解釋一下scrappedcola說了些什麼? –

0

首先,JavaScript不應該用來檢測瀏覽器。就像Chrome一樣,它給出了結果「Netscape」。不管怎麼說回答你的問題,怎麼樣一種替代方案:

<html> 
<head> 
<script type="text/javascript"> 
var browserName=navigator.appName; 
if (browserName=="Microsoft Internet Explorer") 
{ 
document.getElementById("example").innerHTML="You're using Internet Explorer!"; 
} 
</script> 

</head> 
<body> 
<div id ="example"></div> 
</body> 
</html> 

它所做的是它會在特定的div元素沒有內容,就是例子。只有在JavaScript檢測到使用Internet Explorer時,纔會在div元素中寫入「您正在使用IE」。例如,您可以使用Internet Explorer檢出http://www.ducksearch.in/。它顯示一個警告框,如果您使用IE,某些功能可能會丟失。非常基本的JavaScript,的確如此:)

祝你好運,未來的道路上,以及所有最好的JavaScript編碼。