Причина возникновения Uncaught SyntaxError: Unexpected end of input

Рейтинг: 0Ответов: 0Опубликовано: 24.08.2023

Есть такой скрипт в отдельном файле bookmarklet_launcher.js:

(function () {
  if (!window.bookmarklet) {
    var bookmarklet_js = document.body.appendChild(
      document.createElement("script")
    );
    bookmarklet_js.src =
      "//127.0.0.1:8000/static/js/bookmarklet.js?r=" +
      Math.floor(Math.random() * 99999999999999);
    window.bookmarklet = true;
  } else {
    bookmarkletLaunch();
  }
})();

Выдает вышеуказанную ошибку, если ссылаюсь на него таким путем:

<a href="javascript:{% include 'bookmarklet_launcher.js' %}"></a>

Но если вставляю скрипт напрямую:

<a href="javascript:(function () {
                if (!window.bookmarklet) {
                  var bookmarklet_js = document.body.appendChild(
                    document.createElement('script')
                  );
                  bookmarklet_js.src =
                    '//127.0.0.1:8000/static/js/bookmarklet.js?r=' +
                    Math.floor(Math.random() * 99999999999999);
                  window.bookmarklet = true;
                } else {
                  bookmarkletLaunch();
                }
              })();" class="button">Bookmark it</a>

То скрипт выполняется корректно. Почему? Сервер разработки запускается с тестовым сертификатом следующим образом:

python manage.py runserver_plus --cert-file cert.crt

Ответы

Ответов пока нет.