2014-01-14 85 views
0

我有一個可以通過樹莓皮和其他東西訪問的網站。我需要在PI訪問站點時顯示一個鍵盤,而不是在其他任何訪問都訪問時顯示。我想我會運行一個簡單的平臺檢查,因爲PI返回Linux armv6l,其他所有內容都將返回Win32。但是我無法對邏輯工作進行簡單的測試。JavaScript if if navigator.platform

靜態/ JS我的JavaScript browswer.js

function myFunction(){ 
if(/Linux armv6l|Linux armv7l/i.test(navigator.platform)) { 
txt = "<p>Browser CodeName: " + navigator.appCodeName + "</p>"; 
} 
else { 
txt= "<p>Browser Language: " + navigator.language + "</p>"; 
} 
document.getElementById("example").innerHTML=txt; 
} 

我的HTML

<html> 
    <head> 
    <title>test</title> 
    </head> 
<body> 

<h1>Welcome</h1> 

<p id="example"></p> 



</body> 
<script type="text/javascript" src="static/js/browser.js"></script> 
</html> 

我很新的Javascript和HTML,所以我相信我做了幾件事情錯了,但我無法弄清楚。感謝

+0

我建議只是顯示反正鍵盤,但是使它所以,你必須點擊的東西來打開它。你不能假設,如果某人有RPi,他就沒有鍵盤,如果他沒有RPi,那麼他確實有一個鍵盤。還有其他的可能性,人們可能想要一個鍵盤,並且有些情況下人們可能會將鍵盤連接到他們的RPi上。 – Joeytje50

+0

這個聲明有什麼作用?/Linux armv6l | linux armv7l/i.test(navigator.platform – gaurav5430

+0

如果我正確理解這一點,並且我不這樣做,它應該測試以查看i.test(navigator.platform)的輸出是否爲== ether Linux armv6l或者Linux armv7l。如果是,那麼if是true或者如果不是,那麼它是false,然後其他代碼應該踢進去。 – Jay42

回答

0
function systemdetect() 
{ 
systemname=navigator.platform; 

if (systemname.indexOf("Linux armv6l")!=-1) { 
    systemname="pi" 
    document.write("<p>this is a test.</P>") 
    } 

else {if (systemname.indexOf("Win32")!=-1) { 
    systemname="MS 32" 
    document.write("<p>this is a Win32 tes.</P>") 

} 

else {systemname="N/A"}}; 

} 

就是我結束了使用,以測試PI