0
我需要檢查和比較過時的瀏覽器版本。如果用戶的瀏覽器版本低於定義的(< =)版本號,則會顯示一條消息,通知用戶更新他/她的瀏覽器。該版本在我的html中的以下數組中定義。Javascript瀏覽器版本查詢陣列
<script type="text/javascript" language="javascript">
var browserarr = {Name:"Chrome", ChromeVersion:52, URL:"http://www.google.com",
Name:"Firefox", FirefoxVersion:40, URL:"http://www.firefox.com",
Name:"Safari", SafariVersion:10, URL:""
};
</script>
我的邏輯一直使用if語句的代碼,但我想另一種方式來做到這一點,這樣我可以取回瀏覽器系列(鉻,Firefox或IE瀏覽器),然後將相應的過時的版本和網址去更新瀏覽器。它應該是動態的,因此我只需要在我的數組中添加一個新行,以指定一個新的瀏覽器以在javascript中進行比較。
檢查瀏覽器
detectJS: function() {
b = detect.parse(navigator.userAgent);
if (b.browser.family === 'Chrome' && b.browser.major <= browserarr["ChromeVersion"]) {
document.getElementById('browserNotificationDiv').style.display = "block";
var url = 'google.com';
//document.getElementById("msgURL").innerHTML = browserarr["URL"];
}
if (b.browser.family === 'IE' && b.browser.major <= 9) {
document.getElementById('browserNotificationDiv').style.display = "block";
var url = 'ie.com';
}
if (b.browser.family === 'Safari' && b.browser.major <= browserarr["SafariVersion"]) {
document.getElementById('browserNotificationDiv').style.display = "block";
var url = 'safari.com';
}
if (b.browser.family === 'Firefox' && b.browser.major <= browserarr["FirefoxVersion"]) {
document.getElementById('browserNotificationDiv').style.display = "block";
var url = 'firefox.com';
}
browserDetect.displayInfo(
'Your current browser ' + b.browser.family + ' version ' + b.browser.major +' is outdated. </br>' +
'Please download the latest version by going to: ' + url + ' ' + '<a href="'+browserarr["URL"]+'">link</a>' +'</br>'
);
},
我應如何處理?
在代碼中'browserarr'不是一個數組,它是一個Object,其中'Name'被覆蓋。 – Tushar
您是否檢查過現有的庫? https://github.com/burocratik/outdated-browser – arjabbar
您是否有鏈接讓用戶點擊「謝謝,但我會自己決定使用哪個瀏覽器版本」? – nnnnnn