点击按钮输出一个随机值,将随机值作为数组下标获取图片,若两次得到的随机值相同,则会产生没有点击效果的感觉。
<div>
<img src="" alt="" width="200px">
<button>switch</button>
</div>
//定义随机数函数
function getRandom(min, max) {
return parseInt(Math.random() * (max - min + 1) + min)
}
//定义按钮的点击事件
btn.onclick = function () {
var key = getRandom(0, arr.length - 1)
// while (choiceKey == key) {
// key = getRandom(0, arr.length - 1)
// }
// choiceKey = key
console.log(key);
}
可能随机到与上一次相同的值
在点击事件中加入whlie循环
var arr = ["a", "b", "c", "d", "e"]
var btn = document.querySelector('button')
// 定义一个变量,初始值与数组中下标不重合,若与数组内下标重合,则第一次必定随机不到该下标对应的值
// eg: 若定义为0,且随后key随机到0,则满足while循环条件,key再一次进行随机,且不为0时退出循环,故第一次随机时key不可能为0
var choiceKey = -1
btn.onclick = function () {
var key = getRandom(0, arr.length - 1)
while (choiceKey == key) {
key = getRandom(0, arr.length - 1)
}
choiceKey = key
console.log(key);
}