Навигатор: создание HTML с JS для версии браузера / имени / высоты / ширины - PullRequest
0 голосов
/ 24 июня 2019

Мой код, который я использую для возврата текущей версии браузера, используемого для моего HTML-документа, возвращает NaN. Я выполнил свой код и чувствовал себя довольно хорошо, но navigator.useragent не возвращает правильный вывод.

/// javascript
function getBrowserName() {
    var lsBrowser = navigator.userAgent;

    if (lsBrowser.indexOf("MSIE") >= 0) {
        return "MSIE";
    } else if (lsBrowser.indexOf("Firefox") >= 0) {
        return "Firefox";
    } else if (lsBrowser.indexOf("Chrome") >= 0) {
        return "Chrome";
    } else if (lsBrowser.indexOf("Safari") >= 0) {
        return "Safari";
    } else if (lsBrowser.indexOf("Opera") >= 0) {
        return "Opera";
    } else {
        return "UNKNOWN";
    }
}

function getBrowserVersion() {
    var ua = navigator.userAgent;
    var browser = getBrowserName();
    var findIndex = ua.indexOf(browser) + browser.length + 1;
    var browserVersion = parseFloat(ua.substring(findIndex, findIndex +3));

    return browserVersion;
}
var browserName = getBrowserName();
var browserVersion = getBrowserVersion();
var windowHeight = window.screen.availHeight;
var windowWidth = window.screen.availWidth;

 document.write("You are using " + browserVersion + " version of the "
 + browserName + " browser to view this page in a browser whose inner" + 
 " window that is" + windowWidth + " pixels wide and " +
 windowHeight + " pixels tall.");

/// html doc
<!DOCTYPE html>
<html lan= "en">
<head>
    <title> Chapter 8 Browser Sniffing</title>
</head>
<body>
    <script src = "browserSniffing.js"></script>
</body>
</html>

Я ожидаю, что мой код заполнит следующие поля: Вы используете версию _________ браузера ____________ для просмотра этой страницы в браузере, внутреннее окно которого имеет ширину _____ пикселей и высоту _____ пикселей. Это заполняет их всех. Но функция getBrowserVersion возвращает NaN. Может быть, кто-то будет так любезен, чтобы дать совет о том, как немного настроить этот код для правильной работы.

1 Ответ

1 голос
/ 24 июня 2019

Попробуйте это:

/// javascript
function getBrowserName() {
    var lsBrowser = navigator.userAgent;
debugger
    if (lsBrowser.indexOf("MSIE") >= 0) {
        return "MSIE";
    } else if (lsBrowser.indexOf("Firefox") >= 0) {
        return "Firefox";
    } else if (lsBrowser.indexOf("Chrome") >= 0) {
        return "Chrome";
    } else if (lsBrowser.indexOf("Safari") >= 0) {
        return "Safari";
    } else if (lsBrowser.indexOf("Opera") >= 0) {
        return "Opera";
    } else {
        return "UNKNOWN";
    }
}

function getBrowserVersion() {
  debugger
    var ua = navigator.userAgent;
    var browser = getBrowserName();
    var findIndex = ua.indexOf(browser) + browser.length + 1;
    var browserVersion = parseFloat(ua.substring(findIndex, findIndex +3));

    return browserVersion;
}
var browserName = getBrowserName();
var browserVersion = getBrowserVersion();
var windowHeight = window.screen.availHeight;
var windowWidth = window.screen.availWidth;

 document.write("You are using " + browserVersion + " version of the "
 + browserName + " browser to view this page in a browser whose inner" + 
 " window that is" + windowWidth + " pixels wide and " +
 windowHeight + " pixels tall.");
<!DOCTYPE html>
<html lan= "en">
<head>
    <title> Chapter 8 Browser Sniffing</title>
</head>
<body>
    <script src = "browserSniffing.js"></script>
</body>
</html>
...