【发布时间】:2013-08-10 13:31:03
【问题描述】:
我只是想掌握javascript,这是我从各种来源组装的脚本,足够简单,所以我可以理解它的水平。请不要太复杂,但如果你这样做,我会很感激你的小解释,不要指望我知道......
<script type="text/javascript" language="JavaScript">
imgs=Array("01.jpg","02.jpg","03.jpg","04.jpg","05.jpg");
var x=0;
document.onkeydown = checkKey;
function checkKey(e) {
e = e || window.event;
if (e.keyCode == '37') {
document.getElementById("myImage").src=imgs[--x];
}
else if (e.keyCode == '39') {
document.getElementById("myImage").src=imgs[++x];
}
}
</script>
在体内……
<img id="myImage" src="01.jpg" style="width:100%">
它应该做的是制作一个适合屏幕宽度的简单图像库,可以使用箭头键从数组中的图像导航。它工作正常,至少对我来说,除了如果我尝试在 x=0 时转到上一个图像,或者从 x=4 转到下一个图像,它会无限延伸,而不是从 05 循环回到 01.jpg。 jpg,反之亦然,如我所愿。我的理论没有奏效。我只是知道一些关于这件事的点点滴滴。有谁知道对这个原始脚本进行最少修改的简单方法?
它不必看起来很专业或“漂亮”。我只是无聊,在四处尝试。也许未来的愿望是成为一名网页设计师,但现在肯定不是 :D 哦,请不要引用 JQuery 吗?当然它们可以工作,但我只想在基本层面上了解解决方案,并获得一个独立的脚本。
【问题讨论】:
-
--x和++x的递减和递增永远不会在任一方向停止,如果您希望它们换行,则在更改它们时使用模数。模是除法的余数。如果您除以数组中的总元素并取余数,它将使您保持在界限内。x = ((x-1) + imgs.length) % imgs.length或x = (x+1) % imgs.length
标签: javascript arrays image