javascript - 数字到文本变量未在 HTML 中显示
问题描述
我有一个名为“Timer”的变量,我试图让数字增加一,然后显示数字。问题是,“测试成功!” 部分甚至没有显示。我在 Visual Studio Code 中没有收到任何错误。
function Test() {
var Timer = 4
setInterval(Rickroll, 1000)
}
function Rickroll() {
if (Timer > 0 ) {
Timer -= 1
}
var TimerString = Timer.toString();
document.getElementById('p1').innerHTML = "Test Successful! Sending you to another website in: "+TimerString;
}
解决方案
变量 Timer 不是全局变量。如果要在 Test() 和 Rickroll 函数中使用 Timer,则必须将 Timer 变量定义为全局变量。此代码将运行良好。
var Timer = 0
function Test() {
if (Timer < 3) {
setInterval(Rickroll, 1000)
}
}
function Rickroll() {
Timer += 1
var TimerString = Timer.toString();
document.getElementById('p1').innerHTML = "Test Successful! Sending you to another
website in: "+TimerString;
}
推荐阅读
- reactjs - Firebase UI stops changing language in React app
- excel - Excel:如何在运行 context.sync() 之前确定单元格是否处于编辑模式
- mysql - 重新索引MySQL数据库相关表的主键
- flutter - 将 StatelessWidget 与方法变量或有状态小部件一起使用?
- java - 查找特定字符串正则表达式
- geometry - 有没有办法在二十面体的所有面上都有相同的图案?
- python - 如何在 IPython 笔记本中运行单元后清除内存
- python - valueError 是什么意思?
- firebase - Firebase Auth - 禁用用户并阻止他与后端交互
- angular - 如何在 Angular 2 中加载谷歌地图服务