我尝试将innerHTML
值转换为另一个innerHTML
,然后将其转换为int
,然后将总数分配给另一个innerhtml
,以便它可以使用javascript打印出来
我已尝试过parseInt
和parseFloat
,但这对我来说无效。
实际上,在我将innerHTML
转换为int
之后,我获得了“NaN”而不是获得数字。
这是我的代码:
var Sum = parseInt(document.getElementById('fir').innerHTML) +
parseInt(document.getElementById('sec').innerHTML);
setTimeout(function func(){ch1.innerHTML=Sum;},2500);
现在函数Sum
内最后一行的func()
应该是一个整数,但不幸的是,它不是,在我的情况下它等于“NaN”,为什么会这样?
编辑:
每件事关于杉木&秒
<body>
<h1 id="fir"></h1>
<h2 id="sec"></h2>
<script>
var x=document.getElementById("fir")
x.style.position = "absolute";
x.style.left = 770;
x.style.top = 315;
var z=document.getElementById("sec")
z.style.position = "absolute";
z.style.left = 930;
z.style.top = 315;
setTimeout(function a(){x.innerHTML=Math.floor((Math.random()*10)+1);},1000);
setTimeout(function b(){z.innerHTML=Math.floor((Math.random()*10)+1);},2000);
</script>
</body>
答案 0 :(得分:0)
尝试以数值开头
<h1 id="fir">0</h1>
<h2 id="sec">0</h2>
您要在超时之前对值进行求和,您应该将求和包装在函数中并在设置值示例后立即调用它:
function applySUM()
{
var Sum = parseInt(document.getElementById('fir').innerHTML) +
parseInt(document.getElementById('sec').innerHTML);
ch1.innerHTML=Sum; //removed the timer to apply the calculation
}
setTimeout(function(){
x.innerHTML=Math.floor((Math.random()*10)+1);
applySUM();
},1000);
setTimeout(function(){
z.innerHTML=Math.floor((Math.random()*10)+1);
applySUM();
},2000);