使用用户输入设置计时器,JavaScript
Setting a timer using user input, JavaScript
我对编程还很陌生。
对于一个学校项目,我正在尝试设置一个 setTimeout();使用用户输入的功能。
这是我的代码:
let header = document.getElementById('header');
let input = document.getElementById('input');
let btn = document.getElementsByTagName('div')[1];
let response1 = document.getElementById('response1');
function playSound() {
setTimeout(function () {
var x = document.getElementById("myAudio")
x.play()
}, 3000); //input.value?? or 1000 * input.value??
}
通常,如果我想在输入框中访问用户的输入,我会输入 input.value。
但是,setTimeout 函数不会将 input.value 识别为可以设置为用作倒计时的参数。我不知道该怎么办。
如有任何帮助,我们将不胜感激。
The setTimeout
function does not recognize input.value
as a parameter that can be set to be used as a countdown
它确实识别它。如果您遇到错误,那么很可能您的输入是文本输入,在这种情况下,您必须先将其值转换为数字,然后才能在 setTimeout
:
中使用
let header = document.getElementById('header');
let input = document.getElementById('input');
let btn = document.getElementsByTagName('div')[1];
let response1 = document.getElementById('response1');
function playSound() {
setTimeout(function () {
var x = document.getElementById("myAudio")
x.play()
}, Number(input.value));
}
如果输入的值以秒为单位,则使用input.value * 1000
。
要动态执行setInterval,您需要调用函数而不是输入文本:
- 创建函数
startInterval
- 调用函数
onChangeInterval
在输入文本事件中使用输入值
<script>
var intervalId;
function startInterval(_interval) {
intervalId = setInterval(function() {
}, _interval);
}
function onChangeInterval (interval) {
interval -= 100;
clearInterval(intervalId);
startInterval(interval);
}
</script>
我对编程还很陌生。
对于一个学校项目,我正在尝试设置一个 setTimeout();使用用户输入的功能。 这是我的代码:
let header = document.getElementById('header');
let input = document.getElementById('input');
let btn = document.getElementsByTagName('div')[1];
let response1 = document.getElementById('response1');
function playSound() {
setTimeout(function () {
var x = document.getElementById("myAudio")
x.play()
}, 3000); //input.value?? or 1000 * input.value??
}
通常,如果我想在输入框中访问用户的输入,我会输入 input.value。 但是,setTimeout 函数不会将 input.value 识别为可以设置为用作倒计时的参数。我不知道该怎么办。
如有任何帮助,我们将不胜感激。
The
setTimeout
function does not recognizeinput.value
as a parameter that can be set to be used as a countdown
它确实识别它。如果您遇到错误,那么很可能您的输入是文本输入,在这种情况下,您必须先将其值转换为数字,然后才能在 setTimeout
:
let header = document.getElementById('header');
let input = document.getElementById('input');
let btn = document.getElementsByTagName('div')[1];
let response1 = document.getElementById('response1');
function playSound() {
setTimeout(function () {
var x = document.getElementById("myAudio")
x.play()
}, Number(input.value));
}
如果输入的值以秒为单位,则使用input.value * 1000
。
要动态执行setInterval,您需要调用函数而不是输入文本:
- 创建函数
startInterval
- 调用函数
onChangeInterval
在输入文本事件中使用输入值
<script>
var intervalId;
function startInterval(_interval) {
intervalId = setInterval(function() {
}, _interval);
}
function onChangeInterval (interval) {
interval -= 100;
clearInterval(intervalId);
startInterval(interval);
}
</script>