オンラインテキストエディタアプリケーションを作成しています。ユーザーが最後にキーを押してから3分ごとにデータをmongodbに保存する必要があります。現在、textareaがフォーカスを失った後、データを保存していますが、ユーザーフレンドリーな機能を追加する必要があります。上記の機能を追加する必要がありますが、それを実行する方法がわかりません。180秒後にajax呼び出しをトリガーできるjqueryのタイマーが必要です。希望する結果を得るために使用できるjquery関数を教えてもらえますか?サーバーサイドで使用しており、データベースとしてmongodbを使用しています。
質問する
1443 次
1 に答える
5
window.setInterval(function() {
$.ajax({...});
}, 180000);
ただし、必要な場合にのみ、この場合はより頻繁に保存するアプローチを使用します。次の例では、 Underscore.jsの関数を使用しています。
$('textarea').on('keyup', _.throttle(_.debounce(function() {
$.ajax(...);
}, 2000), 60000));
これにより、ユーザーが2秒以上入力を停止するとすぐにデータが保存されますが、1分に1回以下です。これは、10秒ごとに変更した後2秒ごとに保存する小さな例です:http://jsfiddle.net/ThiefMaster/AagFC/
于 2012-04-24T08:14:25.367 に答える