Javascript 将值用作setTimeout
如何在JavaScript setTimeout函数中将HTML值用作数字 例如,我的超时函数如下所示:Javascript 将值用作setTimeout,javascript,html,Javascript,Html,如何在JavaScript setTimeout函数中将HTML值用作数字 例如,我的超时函数如下所示: var object = document.getElementById("object"); setTimeout(function(){ object.style.opacity = "0"; }, 1000); // HTML: <input id ="input" type="number" value="1"/> // JavaScript:
var object = document.getElementById("object");
setTimeout(function(){
object.style.opacity = "0";
}, 1000);
// HTML:
<input id ="input" type="number" value="1"/>
// JavaScript:
var object = document.getElementById("object");
var input = document.getElementById("input");
setTimeout(function(){
object.style.opacity = "0";
}, input.value + "000");
但是,我想从HTML输入中将计时设置为动态值,如下所示:
var object = document.getElementById("object");
setTimeout(function(){
object.style.opacity = "0";
}, 1000);
// HTML:
<input id ="input" type="number" value="1"/>
// JavaScript:
var object = document.getElementById("object");
var input = document.getElementById("input");
setTimeout(function(){
object.style.opacity = "0";
}, input.value + "000");
//HTML:
//JavaScript:
var object=document.getElementById(“对象”);
var输入=document.getElementById(“输入”);
setTimeout(函数(){
object.style.opacity=“0”;
},input.value+“000”);
只需使用
当然,如果你的时间以秒为单位,乘以1000
当然,如果你的时间以秒为单位,乘以1000
当然,如果你的时间以秒为单位,乘以1000
当然,如果时间以秒为单位,乘以1000您需要将字符串转换为整数。下面是您的方法:
您需要将字符串转换为int。以下是您的操作方法:
您需要将字符串转换为int。以下是您的操作方法:
您需要将字符串转换为int。以下是您的操作方法:
问题是您没有将字符串值转换为数字。还有一些语法错误 修改这行代码:
setTimeout(function(){
object.style.opacity = "0";
}, parseInt(input.value + "000"));
问题是您没有将字符串值转换为数字。还有一些语法错误 修改这行代码:
setTimeout(function(){
object.style.opacity = "0";
}, parseInt(input.value + "000"));
问题是您没有将字符串值转换为数字。还有一些语法错误 修改这行代码:
setTimeout(function(){
object.style.opacity = "0";
}, parseInt(input.value + "000"));
问题是您没有将字符串值转换为数字。还有一些语法错误 修改这行代码:
setTimeout(function(){
object.style.opacity = "0";
}, parseInt(input.value + "000"));
将输入转换为变量。您的代码基本上是连接一个字符串值
var timeoutLength = parseInt(input.value, 10) * 1000;
然后像这样使用它
setTimeout(function(){
object.style.opacity = "0";
},timeoutLength);
希望这有帮助 将输入转换为变量。您的代码基本上是连接一个字符串值
var timeoutLength = parseInt(input.value, 10) * 1000;
然后像这样使用它
setTimeout(function(){
object.style.opacity = "0";
},timeoutLength);
希望这有帮助 将输入转换为变量。您的代码基本上是连接一个字符串值
var timeoutLength = parseInt(input.value, 10) * 1000;
然后像这样使用它
setTimeout(function(){
object.style.opacity = "0";
},timeoutLength);
希望这有帮助 将输入转换为变量。您的代码基本上是连接一个字符串值
var timeoutLength = parseInt(input.value, 10) * 1000;
然后像这样使用它
setTimeout(function(){
object.style.opacity = "0";
},timeoutLength);
希望这有帮助 对于
setTimeout
,使用parseInt
将值视为数字而不是字符串
另外,我会避免在JavaScript中使用对象
和输入
作为变量名-它们不太具有描述性。(尽管如此,您可能仅将其用作示例。)
HTML:
<input id="myInput" type="number" value="1"/>
<div id="myDiv"><p>Some text</p></div>
var myDiv = document.getElementById("myDiv");
var myInput = document.getElementById("myInput");
setTimeout(function(){
myDiv.style.opacity = "0";
}, parseInt(myInput.value, 10) * 1000); // 1 * 1000 = 1000ms (1 second)
这里还有:使用
parseInt
将值视为一个数字,而不是setTimeout
的字符串
另外,我会避免在JavaScript中使用对象
和输入
作为变量名-它们不太具有描述性。(尽管如此,您可能仅将其用作示例。)
HTML:
<input id="myInput" type="number" value="1"/>
<div id="myDiv"><p>Some text</p></div>
var myDiv = document.getElementById("myDiv");
var myInput = document.getElementById("myInput");
setTimeout(function(){
myDiv.style.opacity = "0";
}, parseInt(myInput.value, 10) * 1000); // 1 * 1000 = 1000ms (1 second)
这里还有:使用
parseInt
将值视为一个数字,而不是setTimeout
的字符串
另外,我会避免在JavaScript中使用对象
和输入
作为变量名-它们不太具有描述性。(尽管如此,您可能仅将其用作示例。)
HTML:
<input id="myInput" type="number" value="1"/>
<div id="myDiv"><p>Some text</p></div>
var myDiv = document.getElementById("myDiv");
var myInput = document.getElementById("myInput");
setTimeout(function(){
myDiv.style.opacity = "0";
}, parseInt(myInput.value, 10) * 1000); // 1 * 1000 = 1000ms (1 second)
这里还有:使用
parseInt
将值视为一个数字,而不是setTimeout
的字符串
另外,我会避免在JavaScript中使用对象
和输入
作为变量名-它们不太具有描述性。(尽管如此,您可能仅将其用作示例。)
HTML:
<input id="myInput" type="number" value="1"/>
<div id="myDiv"><p>Some text</p></div>
var myDiv = document.getElementById("myDiv");
var myInput = document.getElementById("myInput");
setTimeout(function(){
myDiv.style.opacity = "0";
}, parseInt(myInput.value, 10) * 1000); // 1 * 1000 = 1000ms (1 second)
这里还有:您缺少一个结束
)
对于setTimeout
调用,这看起来像是您的问题,因为setTimeout
也接受一个字符串(它将为您将其转换为int)。setTimeout
在您的第一个示例中缺少右括号。代码中也有吗?对于setTimeout
调用,您缺少一个结束符)
,这看起来像是您的问题,因为setTimeout
也接受字符串(它将为您将其转换为int)。setTimeout
在第一个示例中缺少右括号。代码中也有吗?对于setTimeout
调用,您缺少一个结束符)
,这看起来像是您的问题,因为setTimeout
也接受字符串(它将为您将其转换为int)。setTimeout
在第一个示例中缺少右括号。代码中也有吗?对于setTimeout
调用,您缺少一个结束符)
,这看起来像是您的问题,因为setTimeout
也接受字符串(它将为您将其转换为int)。setTimeout
在第一个示例中缺少右括号。代码中也有吗?您应该始终将第二个参数(基数)传递给parseInt
。还有,缺少括号。@JanDvorak,如果他使用了Number()
?修复了括号。但是为什么需要基数,不是默认的基数10吗?@gat默认为“自动检测”。这有一个不幸的副作用,就是将前导零视为八进制。@gat不。通常是这样,但并不总是这样。它取决于浏览器;尽管现在大多数(但不是所有!)浏览器都使用base 10作为默认值。您应该始终将第二个参数(基数)传递给parseInt
。还有,缺少括号。@JanDvorak,如果他使用了Number()
?修复了括号。但是为什么需要基数,不是默认的基数10吗?@gat默认为“自动检测”。这有一个不幸的副作用,就是将前导零视为八进制。@gat不。通常是这样,但并不总是这样。它取决于浏览器;虽然