【发布时间】:2019-02-18 23:46:43
【问题描述】:
我需要通过按键来增加我的数组。我可以显示数组的第一个元素,但当我按下另一个键时,无法显示数组的其他元素。
我使用警报来获取消息以通过按键显示,并且可以显示数组中的第一个元素,但当我再次按下该键时无法显示数组的其他元素。
function display_phrase() {
var arrayPhrase = ['Relax!', 'Dont Do It!', 'Chill!', 'Take It Easy!', 'Do It!', 'Panic!', 'Beat It!','Forget About It!','Wooooo!','Oh Bother!'];
var arrayCounter = 0;
var arrayPosition = (arrayCounter % arrayPhrase.length);
$("#display_phrase").html("<h1>" +arrayPhrase[arrayPosition] +".</h1>");
}
var arrayCounter = 0;
$(document).ready(function() {
$('body').keypress(function() {
display_phrase();
arrayCounter++;
});
});
【问题讨论】:
-
与Java无关,所以我删除了问题标签。相反,它看起来与 JavaScript 相关,因此我添加了该标签。为您的问题吸引错误的专家是没有意义的。
-
display_phrase有一个局部变量arrayCounter在方法中优先于全局变量。删除它。 -
arrayCounter正在重新分配给display_phrase中的0。将arrayCounter的作用域提高到display_phrase函数之上。
标签: javascript jquery arrays increment keypress