为什么这个简单的 JavaScript 秒表不起作用?
Why is this simple JavaScript stopwatch not working?
我写了一些非常简单的代码,应该代表一个带有两个按钮的秒表,点击 'Start' 应该从 0 开始向上计数,延迟 1 秒。
但是,当我点击时没有任何变化。我的错误在哪里?
"use strict";
var s = 1;
function mf() {
setInterval(function() {
document.getElementById("#sw").innerText = ++s;
}, 1000);
}
<div id="sw">0</div>
<input type="button" value="Start" name="start" onlick="mf" />
<input type="button" value="Stop" name="stop" />
首先,你打错了。您键入 onlick
而不是 onclick
。其次,document.getElementById
接受一个字符串,该字符串引用您要获取的元素的 ID。但是,它不需要#。
document.getElementById("sw")
您有两个问题:
1): 您正在使用
onlick="mf"
不过,应该是:
onclick="mf();"
2): 您在 'getElementByID' 中使用了 #
。这不是 jQuery- 使用
document.getElementById("sw")
有效答案
"use strict";
var s = 1;
function mf() {
setInterval(function() {
document.getElementById("sw").innerText = s++;
}, 1000);
}
<div id="sw">0</div>
<input type="button" value="Start" name="start" onclick="mf();" />
<input type="button" value="Stop" name="stop" />
你的错误:
document.getElementById("#sw").innerText = ++s;
应该是
document.getElementById("sw").innerText = s++;
删除 #
,并使用 s++
,而不是 ++s
。
<input type="button" value="Start" name="start" onlick="mf" />
该代码有 2 个错误:onlick
和 mf
。 Onlick
并非所有浏览器都支持 (xD)。请改用 onclick
。另外,包括参数,所以 mf()
我写了一些非常简单的代码,应该代表一个带有两个按钮的秒表,点击 'Start' 应该从 0 开始向上计数,延迟 1 秒。
但是,当我点击时没有任何变化。我的错误在哪里?
"use strict";
var s = 1;
function mf() {
setInterval(function() {
document.getElementById("#sw").innerText = ++s;
}, 1000);
}
<div id="sw">0</div>
<input type="button" value="Start" name="start" onlick="mf" />
<input type="button" value="Stop" name="stop" />
首先,你打错了。您键入 onlick
而不是 onclick
。其次,document.getElementById
接受一个字符串,该字符串引用您要获取的元素的 ID。但是,它不需要#。
document.getElementById("sw")
您有两个问题:
1): 您正在使用
onlick="mf"
不过,应该是:
onclick="mf();"
2): 您在 'getElementByID' 中使用了 #
。这不是 jQuery- 使用
document.getElementById("sw")
有效答案
"use strict";
var s = 1;
function mf() {
setInterval(function() {
document.getElementById("sw").innerText = s++;
}, 1000);
}
<div id="sw">0</div>
<input type="button" value="Start" name="start" onclick="mf();" />
<input type="button" value="Stop" name="stop" />
你的错误:
document.getElementById("#sw").innerText = ++s;
应该是
document.getElementById("sw").innerText = s++;
删除 #
,并使用 s++
,而不是 ++s
。
<input type="button" value="Start" name="start" onlick="mf" />
该代码有 2 个错误:onlick
和 mf
。 Onlick
并非所有浏览器都支持 (xD)。请改用 onclick
。另外,包括参数,所以 mf()