javascript - 我正在尝试使用 JavaScript 更改 HTML
问题描述
我正在尝试使用 JavaScript 来更改网页的 HTML 内容。我有一组数字,从 0 到 9,我正在尝试使用 JavaScript 将其从 9 更改为 0。
HTML 和 JS 是
function flip(amount) {
var x = 0;
for (i = amount; x < amount; x++) {
setTimeout(() => {
document.getElementById(String(x)).innerText = String(amount - x - 1);
}, 2000);
console.log(x);
}
}
<span id="0">0</span>
<span id="1">1</span>
<span id="2">2</span>
<span id="3">3</span>
<span id="4">4</span>
<span id="5">5</span>
<span id="6">6</span>
<span id="7">7</span>
<span id="8">8</span>
<span id="9">9</span>
<button id="b1" onclick="flip(10);">Change</button>
在控制台中,x 被正确记录了十次。在控制台中,它说
Uncaught TypeError: Cannot set property 'innerText' of null at change.html:25
(change.html 是文档的名称)
我不知道那应该是什么意思或如何解决它。
解决方案
function flip(amount) {
for (var i = 0; i <= amount; i++) {
setTimeout(() => {
document.getElementById(String(x)).innerText = String(amount - i - 1);
}, 2000);
console.log(x);
}
}
<span id="0">0</span>
<span id="1">1</span>
<span id="2">2</span>
<span id="3">3</span>
<span id="4">4</span>
<span id="5">5</span>
<span id="6">6</span>
<span id="7">7</span>
<span id="8">8</span>
<span id="9">9</span>
<button id="b1" onclick="flip(10);">Change</button>
推荐阅读
- nginx - 如何部署 Rasa 聊天机器人
- python - 如何打印不带括号、引号或逗号的列表
- android - 没有为“UploadTask”类型定义吸气剂“onComplete”
- python - 带有临时文件的烧瓶 send_file
- python - 我怎样才能使我的代码更简单并且仍然获得相同的输出?
- npm - npm 包的作者必须选择支持的转译目标吗?
- c - 没有规则可以使“out”需要目标“main.o”。停止
- python - numpy 可以通过将一维数组中的 n 个元素与另一个一维数组的每个元素相加来创建 n 个数组吗?
- python - 如何在while循环中打开和编辑txt文件?
- java - 这怎么可能?Text 和 RelativeLayout 的颜色相同,并且会发生这种情况