【问题标题】:Loops and counting循环和计数
【发布时间】:2021-01-01 20:23:00
【问题描述】:

我想这样当有人回答提示时,他们可以回答数字 1 到 6,然后退出以输入 0。之后我希望他们能够输入一个数字,并且该数字将与图片或链接。示例:我有 3 种不同的糖果,我想要 1 种是吃喝玩乐,2 种是 m&ms,3 种是快乐的牧场主。当用户输入 1 时,他们会出现一个吃喝玩乐的图像,当他们输入 2 时,会出现 m&ms 的图像。这是我到目前为止的代码。如果有人可以帮助我,我将不胜感激!

var stop = '0'   

while(true) {
    var input = prompt('Give a number 1 through 6. Type 0 to exit.');
    if(input === stop){
        break;
    }
} 

【问题讨论】:

  • 将图像放入数组中,然后使用输入作为数组索引。由于数组索引从 0 开始,因此您需要减去 1。
  • 你在数什么?

标签: javascript loops while-loop count prompt


【解决方案1】:

您可以拥有一组图像 url,并通过用户输入的数字选择其中的任何一个。

var images = ['xxx.jpg','yyy.jpg', 'zzz.jpg']
var stop = '0'   

while(true) {

    var input = prompt('Give a number 1 through 6. Type 0 to exit.');

    if(input === stop){
        break;
    }
    else{
     
       if (!IsNaN(input) && images.length >= input)
          showImage(images[input - 1]);   //a mock function
    }
} 

【讨论】:

  • 好的,所以我添加了数组。对于底部if语句中的“images.length”部分,是放在css文件中的带有图像长度和高度的东西吗?对不起,我是新手。几天前我刚开始接触 JavaScript。我试图分解该模拟函数的作用,以便我理解它。到目前为止,它还没有奏效,所以我在某处遗漏了一些东西。谢谢!
  • showImage 是一个模拟函数。函数内部的可能代码是通过其src 属性将图像设置为img 元素。
  • 对不起,我的速度很慢。那么在图像元素所在的模拟函数中,我将包含我想要的图像的文件夹放入其中?或者我会将 src 放在 var images = [...] 中吗?对不起。
  • 我输入了“showImage(, [input - 1]);”对于每次更改输入的所有图像。那是正确的?当然,我确实使用了我的实际文件名。现在提示没有出现,我检查了一切确保一切看起来像你的代码。对不起。非常感谢您提供的信息!
  • 错了。您需要逐步遵循一些教程。使用 w3 学校教程并通过它。
【解决方案2】:

我会这样处理你的问题。只需捕获输入并在您的 while 循环中处理它。

var pictures = [...] // array of pictures

while(true){

    var input = prompt('Give a number 1 through 6. Type 0 to exit.');
    if(input === '0'){
        break;
    }else{
        if(pictures.length >= input) {
             showMyImage(pictures[input - 1])
             // or do anything else with your image (e.g. error handling etc.)
        }
    }


}

希望这能有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-14
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    相关资源
    最近更新 更多