gpt4 book ai didi

javascript - 无限 setInterval 即使它应该已经清除?

转载 作者:行者123 更新时间:2023-11-28 15:30:57 24 4
gpt4 key购买 nike

为什么 setInterval 不会自行清除?...每个循环 globalAlpha 多 0.1。然而,即使它在 1 处停止递增。循环仍然继续?

我的完整代码位于文件底部:https://github.com/GunZi200/Memory-Colour/blob/master/test.js

function secondCanvasFirst(){
//if (collides(secondCanvas, exx, eyy)) {
console.log("true");
var j = 0,
i = setInterval(function () {
context.globalAlpha = j;
context.fillStyle = '#F8F8FF';
context.fillRect(0, 0, x, y);
j += 0.1;
console.log(context.globalAlpha);
if (context.globalAlpha.toFixed(0) === 1) {
clearInterval(i);
userTurn = true;
b_canvas.addEventListener('click', clickEvent, false);
alert("hi");
second = true;
game_interface();
}
}, 100);
}
var clickEvent1 = function clickEvent1(e) {
new FastClick.attach(document.body);
console.log("clickevent1");
exx = e.offsetX;
eyy = e.offsetY;
secondCanvasFirst();
}

if (b_canvas && b_canvas.getContext) {
b_canvas.addEventListener('click', clickEvent1, false);
FastClick.attach(document.body);
}

最佳答案

尝试更换

context.globalAlpha.toFixed(0) === 1 

context.globalAlpha > 0.95

toFixed 将您的值转换为字符串,这不是您想要的。

关于javascript - 无限 setInterval 即使它应该已经清除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27392129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com