Как исправить ошибку «Неожиданный конец ввода» - PullRequest
0 голосов
/ 09 апреля 2019

Я рассмотрел несколько других вопросов с этой ошибкой, и ни одно из решений в них не помогло.Я использую учебник, и он заставляет меня скопировать код с веб-сайта и вставить его внутри тега скрипта (он не говорит, чтобы вставить его внутри тега скрипта, он просто говорит вставить его в HTML-документ).Я продолжаю получать сообщение «Синтаксическая ошибка: неожиданный конец ввода» в закрывающем теге сценария в приведенном ниже коде:

<script>
            (function () {
                "use strict";

                var app = WinJS.Application;
                var activation = Windows.ApplicationModel.Activation;

                app.onactivated = function (args) {
                    if (args.detail.kind === activation.ActivationKind.launch) {

                        args.setPromise(WinJS.UI.processAll().
                            done(function () {

                            }));
                    }
                };
            (function () {
                "use strict";

                var app = WinJS.Application;
                var activation = Windows.ApplicationModel.Activation;

                app.onactivated = function (args) {
                    if (args.detail.kind === activation.ActivationKind.launch) {

                        args.setPromise(WinJS.UI.processAll().
                        done(function () {

                        // Add an event handler to the button.
                        document.querySelector("#requestPosition").addEventListener("click",
                            requestPosition);

                        }));
                    }
                };

                var nav = null;

                function requestPosition() {
                    if (nav == null) {
                        nav = window.navigator;
                    }

                    var geoloc = nav.geolocation;
                    if (geoloc != null) {
                        geoloc.getCurrentPosition(successCallback, errorCallback);
                    }

                }

                function successCallback(position) {
                    document.getElementById("latitude").innerHTML =
                        position.coords.latitude;
                    document.getElementById("longitude").innerHTML =
                        position.coords.longitude;

                }

                function errorCallback(error) {
                    var strMessage = "";

                    // Check for known errors
                    switch (error.code) {
                        case error.PERMISSION_DENIED:
                            strMessage = "Access to your location is turned off. " +
                                "Change your settings to turn it back on.";
                            break;
                        case error.POSITION_UNAVAILABLE:
                            strMessage = "Data from location services is " +
                                "currently unavailable.";
                            break;
                        case error.TIMEOUT:
                            strMessage = "Location could not be determined " +
                                "within a specified timeout period.";
                            break;
                        default:
                            break;
                    }

                    document.getElementById("status").innerHTML = strMessage;
                }

                app.start();
            }()
        </script>

Это в последней главе и только в первой части упражнения, поэтому любая помощьценится.Ранее я пытался добавить еще одну скобку в конец JavaScript, но это привело к другой ошибке.Если это поможет, это в рабочей тетради MTA HTML5, Урок 10

1 Ответ

0 голосов
/ 09 апреля 2019

Вы повторяете первую часть кода JavaScript и пропускаете знак ")", закрывающий объявление функции;

(function() {
"use strict";

var app = WinJS.Application;
var activation = Windows.ApplicationModel.Activation;

app.onactivated = function(args) {
  if (args.detail.kind === activation.ActivationKind.launch) {
    args.setPromise(
      WinJS.UI.processAll().done(function() {
        // Add an event handler to the button.
        document
          .querySelector("#requestPosition")
          .addEventListener("click", requestPosition);
      })
    );
  }
};

var nav = null;

function requestPosition() {
  if (nav == null) {
    nav = window.navigator;
  }

  var geoloc = nav.geolocation;
  if (geoloc != null) {
    geoloc.getCurrentPosition(successCallback, errorCallback);
  }
}

function successCallback(position) {
  document.getElementById("latitude").innerHTML = position.coords.latitude;
  document.getElementById("longitude").innerHTML = position.coords.longitude;
}

function errorCallback(error) {
  var strMessage = "";

  // Check for known errors
  switch (error.code) {
  case error.PERMISSION_DENIED:
    strMessage =
      "Access to your location is turned off. " +
      "Change your settings to turn it back on.";
    break;
  case error.POSITION_UNAVAILABLE:
    strMessage =
      "Data from location services is " + "currently unavailable.";
    break;
  case error.TIMEOUT:
    strMessage =
      "Location could not be determined " +
      "within a specified timeout period.";
    break;
  default:
    break;
}

document.getElementById("status").innerHTML = strMessage;
}

app.start();
})();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...