提问人:jljjj 提问时间:7/19/2023 最后编辑:engjljjj 更新时间:7/19/2023 访问量:46
我的html(+javascript)不会重定向到下一页。:(
My html (+javascript) will not redirect to the next page. :(
问:
我通过 Javascript 做了一个计数循环。我的目标是,当它达到 100 时,它会重定向到另一个页面。
var number = document.getElementById("mainText").textContent;
var nnumber = parseInt(number)
function myLoop() {
setTimeout(function() {
nnumber += 1;
document.getElementById("mainText").innerHTML = nnumber
nnumber++;
if (nnumber < 101) {
myLoop();
}
}, 200)
}
if(nnumber == 100){
console.log(typeof(nnumber))
window.location.replace("mainverification.html")
}
myLoop();
element1 = document.getElementById("element1")
element2 = document.getElementById("element2")
element3 = document.getElementById("element3")
element4 = document.getElementById("element4")
element5 = document.getElementById("element5")
setTimeout(function(){
element2.style.display = "block"
element1.style.display = "none"
setTimeout(function(){
element2.style.display="none"
element3.style.display="block"
setTimeout(function(){
element3.style.display="none"
element4.style.display="block"
setTimeout(function(){
element4.style.display="none"
element5.style.display="block"},2500)},2500)},2500)
},1000)
我知道这是很多代码,但是是的......由于某种原因,if 语句似乎不起作用。它不会重定向。有关更多上下文,以下是 HTML:
<!DOCTYPE html>
<html>
<head>
<title>Loading....</title>
<link rel="stylesheet" href="./starting.css">
</head>
<script src="https://kit.fontawesome.com/1f2023aaf1.js" crossorigin="anonymous"></script>
<body>
<i id="fa" class="fa fa-spinner fa-10x"></i>"></i><br>
<p id="mainText">0</p>
<p class="idk">%</p>
<p id="element1">Getting Data</p><br>
<p id="element2">Encrypting Data (Your Data is Private!)</p><br>
<p id="element3">Storing Data</p><br>
<p id="element4">Grabbing a Cofee</p><br>
<p id="element5">Playing Fortnite</p><br>
<script src="loading.js"></script>
</body>
</html>
如果有人能找到什么问题,id受益。提前致谢。
答:
0赞
David
7/19/2023
#1
您每 200 毫秒重复检查一次此条件:
if (nnumber < 101) {
myLoop();
}
但是,在页面首次加载时,您检查此条件一次,并且仅检查一次:
if(nnumber == 100){
console.log(typeof(nnumber))
window.location.replace("mainverification.html")
}
如果您还想重复检查后一个条件,则每 200 毫秒一次,将 放入前一个条件所在的函数中。myLoop
0赞
hassan
7/19/2023
#2
enter code here
var number = document.getElementById("mainText").textContent;
var nnumber = parseInt(number)
function myLoop() {
setTimeout(function() {
nnumber += 1;
document.getElementById("mainText").innerHTML = nnumber;
nnumber++;
if (nnumber < 101) {
myLoop();
} else {
// Redirect when nnumber reaches 100
window.location.replace("mainverification.html");
}
}, 200);
}
element1 = document.getElementById("element1");
element2 = document.getElementById("element2");
element3 = document.getElementById("element3");
element4 = document.getElementById("element4");
element5 = document.getElementById("element5");
setTimeout(function(){
element2.style.display = "block";
element1.style.display = "none";
setTimeout(function(){
element2.style.display = "none";
element3.style.display = "block";
setTimeout(function(){
element3.style.display = "none";
element4.style.display = "block";
setTimeout(function(){
element4.style.display = "none";
element5.style.display = "block";
}, 2500);
}, 2500);
}, 2500);
}, 1000);
// Start the loop when the page loads
myLoop();
评论
if(nnumber == 100)
if