我编写了一个脚本,可以自动将textarea值保存在textarea的onchange事件中。我面临的问题是当用户输入内容并突然停止时,onchange不会触发,直到用户点击屏幕上的其他位置。是不是可以让我的脚本以用户在textarea上停止输入时的方式工作:
<textarea onchange="onautosave()" id="autosave" ></textarea>
让我们说五秒钟,然后函数onautosave()
被触发?请让我现在怎么办呢。感谢
答案 0 :(得分:2)
您可以使用onkeyup
事件和setTimeout()
来触发自动保存。这是代码(仅用于描绘整个事物)
<textarea onkeyup="autosave()" id="autosave" ></textarea>
var autosave_timer = null;
function save() {
// actual save code
}
function autosave() {
if(autosave_timer)
clearTimeout(autosave_timer);
autosave_timer = setTimeout(save, 5000);
}
请注意清除超时。它有助于不要压倒服务器。