在输入字段中键入文本后,按钮onclick不会触发

时间:2017-02-02 11:20:16

标签: javascript html button input focus

我做了一个简单的计算器。

用户可以在输入字段中输入值,然后点击' +'按钮。 焦点仍然在输入字段上,因此用户可以在单击+后直接输入新值。鼠标位置保留在' +'按钮,这样他就可以在输入新值后再次单击。 但是,单击此时间,根本不会触发任何事件。大约一会儿1秒钟再次可能,点击被触发。请解释一下。

N.b。我在线计算器遇到了同样的行为,例如: http://web2.0calc.com/

html代码:

<input type='text' id=calc size=14 style='text-align:right' ></input>
<button type='button' onclick= 'Plus()'>+</button>

和脚本:

 // init:
  document.getElementById('calc').value = '' 
  document.getElementById('calc').focus()
  //
  function Plus(){
  // check input, add to total
  document.getElementById('calc').value = '' // clears input after add
  document.getElementById('calc').focus()    // keeps focus on input
   }

1 个答案:

答案 0 :(得分:2)

您提供的示例链接在我的机器中完美运行。你提到的1s延迟可能是性能问题,因为旧的浏览器,慢速机器等。