我编写的代码,当我的window.pageYOffset超过400时,我为了让某个div淡入而制作它并且它的工作原理很奇怪。首先,它会淡入但它会闪烁,直到不透明度设置为1.0并且我不知道如何修复它。请帮帮我,我不知道哪个是我的错。这是代码:
var navBarVisibility = function () {
if (window.pageYOffset > 400) {
var movies = document.getElementById("movies");
var opacity = 0.1;
var apparence = function () {
if (opacity <= 1.0) {
movies.style.opacity = opacity;
} else {
clearInterval(timer2);
clearInterval(timer);
}
opacity += 0.1;
}
var timer = window.setInterval(apparence, 70);
}
}
var timer2 = window.setInterval(navBarVisibility, 1);
非常感谢。
答案 0 :(得分:0)
它就是这样做的,因为你没有检查代码是否已经运行,因此当你超过400时,它会反复触发相同的事件。
当偏移超过400时,您需要取消timer2。