javascript - javascript onclick递减问题
问题描述
我正在尝试在完成一个所有幻灯片放映后制作图像幻灯片放映,当我可以单击后退按钮时它显示未定义
请检查此功能 prevFun。
const slide = document.querySelector("#imgSlide");
const img = ["a", "b", "c", "d"];
const img_Length = img.length;
var i = 1;
const nextFun = () => {
if (i < img_Length) {
slide.src = `images/${img[i]}.jpg`;
i++;
console.log(i);
}
};
const prevFun = () => {
if (i < 0) {
return;
} else if (i <= img.length) {
slide.src = `images/${img[i]}.jpg`;
i--;
console.log(i);
}
};
<div class="images">
<img src="images/a.jpg" alt="img" id="imgSlide" />
<div class="controls">
<div class="left" onclick="prevFun()">
<</div>
<div class="right" onclick="nextFun()">></div>
</div>
</div>
解决方案
似乎工作。这些结果不是你所期望的吗?
const img = ["a", "b", "c", "d"];
let i = 1;
function increment() {
if(i >= img.length) return i;
return ++i;
}
function decrement() {
if (i < 1) return i;
if (i <= img.length) {
return --i;
}
}
console.log(increment()); // 2
console.log(increment()); // 3
console.log(decrement()); // 2
console.log(decrement()); // 1
console.log(decrement()); // 0
console.log(decrement()); // 0
console.log(decrement()); // 0
console.log(decrement()); // 0
console.log(increment()); // 1
console.log(increment()); // 2
console.log(increment()); // 3
console.log(increment()); // 4
console.log(increment()); // 4
console.log(increment()); // 4
console.log(increment()); // 4
推荐阅读
- velocity - Xwiki 中的用户信息
- sql - 根据先前更新语句的结果进行更新
- c# - Shopify 应用程序/无效的 URI:无法解析主机名
- amazon-web-services - 使用 JavaScript 从 AWS S3 存储桶读取数据
- access-token - 具有自定义生命周期的身份服务器 4 访问令牌
- android - 处理命令时发生未知的服务器端错误原始错误:找不到 adb.exe in
- python-3.6 - 无法在 Python 3.6 中运行 dlib 模块
- javascript - dot.js 使用数组
- java - 测试包中的类在 IntelliJ 编译时不可用
- javascript - 在div中加载外部php文件时如何控制两个滚动条出现在单个屏幕上