Изменить случайное сгенерированное слово после выполнения функции - PullRequest
0 голосов
/ 11 июня 2018

В настоящее время я работаю над программой, в которой вам нравится или не нравится активность, отображаемая на экране.Моя проблема: я хотел бы, чтобы случайно сгенерированное слово изменилось после того, как щелкнул ввод «вниз» или «ввод вверх».

Вот мой код JavaScript:

let words = ['Food', 'Video Games', 'Movies', 'Spa', 'Sleeping'];
let word = words[Math.floor(Math.random()*words.length)];

document.getElementById("word").innerHTML = word;

function ai(){
  document.getElementById("liked").innerHTML = "LIKED";
  document.getElementById("disliked").innerHTML = "";
}

function aii(){
  document.getElementById("disliked").innerHTML = "DISLIKED";
  document.getElementById("liked").innerHTML = "";
}

Вотмой HTML код:

<h1 id="word"></h1>
<h1 id="liked"></h1>
<h1 id="disliked"></h1>
<input type="image" src="thumbsup.png" class="tu" onclick="ai()">
<input type="image" src="thumbsdown.png" class="td" onclick="aii()">

Заранее спасибо!

Ответы [ 3 ]

0 голосов
/ 11 июня 2018

Просто сделайте генерацию случайного слова в функции,

function generate_random() {
  let word = words[Math.floor(Math.random()*words.length)];
  document.getElementById("word").innerHTML = word;   
}   

И затем вызовите эту функцию в начале вашего скрипта или в конструкторе (в зависимости от того, какую платформу вы используете) изатем просто добавьте вызов функции в ваши ai () и aii ()

function ai(){
  document.getElementById("liked").innerHTML = "LIKED";
  document.getElementById("disliked").innerHTML = "";
  generate_random();
}

function aii(){
  document.getElementById("disliked").innerHTML = "DISLIKED";
  document.getElementById("liked").innerHTML = "";
  generate_random();
}
0 голосов
/ 11 июня 2018

Вы выбираете случайное слово только в объявлении и просто изменяете текст onClick.

Вы должны создать функцию для выбора случайного слова onClick, что-то вроде этого:

const pickWord = () => words[Math.floor(Math.random()*words.length)];

function ai(){
  document.getElementById("liked").innerHTML = "LIKED";
  document.getElementById("disliked").innerHTML = "";
  document.getElementById("word").innerHTML = pickWord();
}
0 голосов
/ 11 июня 2018

Просто переместите случайное поколение в функции.Вы можете создать функцию, которая генерирует случайные числа, а затем вызывать эту функцию внутри ваших функций onclick

let words = ['Food', 'Video Games', 'Movies', 'Spa', 'Sleeping'];

function random_generate(){
  let word = words[Math.floor(Math.random()*words.length)];
  document.getElementById("word").innerHTML = word;

}
function ai(){
  random_generate();
  document.getElementById("liked").innerHTML = "LIKED";
  document.getElementById("disliked").innerHTML = "";
}

function aii(){
  random_generate();
  document.getElementById("disliked").innerHTML = "DISLIKED";
  document.getElementById("liked").innerHTML = "";
}
<h1 id="word"></h1>
<h1 id="liked"></h1>
<h1 id="disliked"></h1>
<input type="image" src="thumbsup.png" class="tu" onclick="ai()">
<input type="image" src="thumbsdown.png" class="td" onclick="aii()">
...