Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将值用作setTimeout_Javascript_Html - Fatal编程技术网

Javascript 将值用作setTimeout

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:

如何在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");
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不。通常是这样,但并不总是这样。它取决于浏览器;虽然