Скрипт, невидимый в консоли Chrome до обновления, хорошо работает с Firefox - PullRequest
0 голосов
/ 08 января 2019

Мне нужно разработать короткий скрипт, генератор цитат для моего курса и столкнуться со странной проблемой. Сценарий хорошо работает с Firefox, но для корректной работы с Chrome требуется обновление страницы.

Я уже пытался включить весь мой код в функцию, вызываемую с помощью window.onload, но это ничего не изменило. Я также попытался поместить тег script в конец html-файла, и также ничего не изменилось, но проблема остается.

HTML код:

<!DOCTYPE html>
<html>

<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-compatible" content="IE-edge">
 <meta name="viewport" content="width=device-width, initial-scale-1">
 <script type="text/javascript" src="script.js"></script>

 <title>Citations pour héros et héroïnes</title>
</head>
<body>
</body>
</html>

JS код:

// Tableaux de données
const firstSFArray = ["Je suis", "Je serais", "J'ai été"];
const secondSFArray = ["un pilote", "un aventurier", "un explorateur", "un 
agent", "un chercheur", "un colon"];
const thirdSFArray = ["de Vénus", "de Mars", "d'Alpha Centauri", "des tréfonds de la Galaxie", "du Néant"];

const firstFanArray = ["Je suis", "Je serais", "J'ai été"];
const secondFanArray = ["un marchand", "un guerrier", "un barbare", "un 
sorcier", "un élémentaire", "un voleur"];
const thirdFanArray = ["d'Hyrule", "de Cimmérie", "des Terres du Milieu", "de Poudlard", "du Pandémonium", "de l'Autre Monde"];

// Génération de la citation
let result;

function generator(array1, array2, array3) {
  const random1 = array1[Math.floor(Math.random() * array1.length)];
  const random2 = array2[Math.floor(Math.random() * array2.length)];
  const random3 = array3[Math.floor(Math.random() * array3.length)];

result = random1 + " " + random2 + " " + random3;
}

// Question à l'utilisateur

while (true) {
  const firstQuestion = prompt("Une nouvelle citation O/N ?").toLowerCase();

  if (firstQuestion === 'o') {
    const secondQuestion = parseFloat(prompt('Combien de citations souhaitez-vous (1 à 5) ?', "1"));

      if (secondQuestion <= 5) {
        const thirdQuestion = prompt("Univers Science-Fiction (S) ou Fantastique (F) ?").toLowerCase();

          if (thirdQuestion === 'science-fiction' || thirdQuestion === 's') {

              for (let x = 0; x < secondQuestion; x++) {
                generator(firstSFArray, secondSFArray, thirdSFArray);
                const quote = result;
                console.log(quote);
              }
          } else if (thirdQuestion === 'fantastique' || thirdQuestion === 'f') {

              for (let x = 0; x < secondQuestion; x++) {
                generator(firstFanArray, secondFanArray, thirdFanArray);
                const quote = result;
                console.log(quote);
              }
          }
      }
  } else if (firstQuestion === 'n') {
    break;
  }
}

Заставьте скрипт работать с Chrome и узнайте, откуда возникает эта проблема, которую я не понимаю.

1 Ответ

0 голосов
/ 08 января 2019

Ваш скрипт работает нормально. Протестировано в Chrome dev tools и все работает. Протестировано без инструментов разработчика (именно те примеры, которые вы предоставили), и это работает. Единственное, о чем беспокоились мои инструменты разработки, было «Uncaught SyntaxError: Неверный или неожиданный токен», потому что после "un (строка 2) есть новая строка, но я думаю, что это из-за форматирования StackOverflow?

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