【发布时间】:2019-02-03 05:44:42
【问题描述】:
当我按下每个字母键以显示某些内容(现在是图像和段落)时,我想制作一个页面。我可以通过为每个键重复我的代码来做到这一点,这不是我想要的,所以我认为我需要一个循环,但我不知道该怎么做。
我可以这样做:
$(document).keydown(function(event) {
if (event.keyCode == 65) {
$("#paragraph").text("text1");
$('#divImg').html('img1');
}
if (event.keyCode == 83) {
$("#paragraph").text("text2");
$('#divImg').html('img2');
}
if (event.keyCode == 68) {
$("#paragraph").text("text3");
$('#divImg').html('img3');
}
}
);
我想通过使用循环并访问对象数组来做到这一点:
var keys = {
a: {
par: "text1",
img: "img1"},
s: {
par: "text2",
img: "img2"
},
d: {
par: "text3",
img: "img3"
}
}
而不是为每个键重复我的代码 25 次(我不想要 25 个 if 语句),我希望我的代码弄清楚我按下了什么键并从对象中获取他的图像和他的段落。我想不出办法来实现它。我试图将键码转换为字符,但过了一会儿我卡在了代码中。
我希望这次我说得更清楚,如果我造成任何混淆,我深表歉意。
【问题讨论】:
-
您只想从
keys对象中获取值吗?如果是这样,您应该明确说明,并可能将文本从aassdd更改为text1,以便他们同意。目前尚不清楚这是否是您要问的。 -
是的,抱歉,我刚刚编辑了我的帖子。
标签: javascript jquery