var n1 = 0;
var n2 = 0;
n1 = parseInt(num1.value);
n2 = parseInt(num2.value);
btns[0].onclick = function(){
ret.innerHTML = n1 + n2 ;
}
btns[1].onclick = function(){
ret.innerHTML = n1 - n2 ;
}
btns[2].onclick = function(){
ret.innerHTML = n1 * n2 ;
}
btns[3].onclick = function(){
ret.innerHTML = n1 / n2 ;
}
应该是这样的原因:首先你要知道window.onload函数是页面加载之后执行。所以 “var n1 = 0;var n2 = 0; n1 = parseInt(num1.value);n2 = parseInt(num2.value);”这段代码执行之后由于页面是刚加载,还没有输入值。所以n1和n2是NaN。而后点击函数执行的时候,n1和n2都没更新,所以一直是NaN,所以要是你刷新下页面,更新n1和n2的值,结果就会正确。看懂吗?
我发现个很奇怪的现象,你打开网页刷新之后,点击结果就会变成正确的,你试试。
因为n1和n2不是整型值,变成parseInt(n1)就可以了