我正在尝试使用 onkeypress 或 onkeydown 单击一次,然后单击 onkeypress 将删除,但我无法做到这一点,并且尝试过但无法正常工作。
下面是我的代码片段。
textarea.onkeypress = myPress;
function myPress(){
let setTime = setInterval(timeUpdate, 1000);
function timeUpdate(){
time.innerHTML =Number(time.innerHTML)+1;
}
}
<div id="time">0</div>
<textarea name="" id="textarea" cols="30" rows="10"></textarea>
根据我的代码片段,当我输入时,onkeypress 看起来像是多次单击,而 setInterval 的行为就像不是每 1 秒计时一次, 所以当我在文本区域内输入内容时,我需要每隔一秒输入一次。 谢谢。
最佳答案
设置时间间隔后,您需要删除该事件。
textarea.onkeypress = myPress;
function myPress(){
let setTime = setInterval(timeUpdate, 1000);
textarea.onkeypress = null;
function timeUpdate(){
time.innerHTML =Number(time.innerHTML)+1;
}
}
<div id="time">0</div>
<textarea name="" id="textarea" cols="30" rows="10"></textarea>
关于javascript - 如何设置onkeypress或onkeydown仅点击一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60039221/