我试图制作一个 JS 倒计时脚本来调整要走的秒数和必须支付的价格。
例如:您将在5秒内被重定向或点击这里支付150立即重定向。
因此,每秒 30 个虚拟硬币。
我已经尝试过,但我很讨厌 JS。
所以,我尝试了什么(通过复制/粘贴在互联网上找到的其他代码):
<script type="text/javascript">
function countDown(secs,elem) {
var element = document.getElementById(elem);
element.innerHTML = "Please wait for "+secs+" seconds";
if(secs < 1) {
clearTimeout(timer);
location.href='mywebpage.php';
}
secs--;
var timer = setTimeout('countDown('+secs+',"'+elem+'")',1000);
timeout = 4;
if(document.getElementById('costs'))
document.getElementById('costs').innerHTML='€ '+(timeout*30);
document.getElementById('status').innerHTML = formatTime (timeout);
timeout--;
}
</script>
然后当然有HTML:
<div id="costs"></div>
<div id="status"></div>
<script type="text/javascript">countDown(3000,"status");</script>
我希望有一个人可以帮助我。
自动倒计时,当计数器达到零时必须重定向,必须从第二个“计数器”每秒起飞 30 次。
所有提示将不胜感激。
提前致谢。
编辑:注意倒计时有效,超时也有效,但我不知道如何将倒计时链接到 timeout = 4(倒计时函数的数量应该是 4,已经尝试过 document.getElementById('status');和类似的东西)。
编辑2:
固定的!
所以,想通了。
对于也在寻找类似 JS 的人:
<script type="text/javascript">
function countDown(secs, ele)
{
if(secs <= -1)
{
location.href = 'rangtest.php'; // No need to kill a timeout it only fires once
}
else
{
// This is just copying your code, you should fix this to use the targeted ele
if(document.getElementById('costs'))
document.getElementById('costs').innerHTML='€ '+(secs*30);
document.getElementById('status').innerHTML = (secs);
secs--;
setTimeout( function() { countDown(secs, ele); }, 1000);
}
}
</script>
感谢@丹市长。