首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在函数执行后更改随机生成的字

在函数执行后更改随机生成的字
EN

Stack Overflow用户
提问于 2018-06-12 01:05:44
回答 3查看 37关注 0票数 0

我目前正在做一个节目,在这个节目中,你喜欢或不喜欢屏幕上显示的活动。我的问题:我希望随机生成的单词在拇指向下输入被单击或拇指向上输入被单击后发生变化。

以下是我的Javascript代码:

代码语言: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代码:

代码语言:javascript
复制
<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()">

提前感谢!

EN

回答 3

Stack Overflow用户

发布于 2018-06-12 01:10:52

只需将随机生成转移到函数中。您可以创建一个执行随机生成的函数,然后在onclick函数中调用该函数

代码语言:javascript
复制
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 = "";
}
代码语言:javascript
复制
<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()">

票数 0
EN

Stack Overflow用户

发布于 2018-06-12 01:12:22

只需将随机字的生成变成一个函数,

代码语言:javascript
复制
function generate_random() {
  let word = words[Math.floor(Math.random()*words.length)];
  document.getElementById("word").innerHTML = word;   
}   

然后在脚本的开头或在构造函数中调用此函数(取决于您使用的框架),然后将函数调用添加到ai()和call ()中。

代码语言:javascript
复制
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
EN

Stack Overflow用户

发布于 2018-06-12 01:13:14

您只在声明时选择了一个随机单词,并且只更改了文本onClick

您应该创建一个函数来选取随机单词onClick,如下所示:

代码语言:javascript
复制
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
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50802836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档