私は<div contenteditable="true" />
、ユーザーが書き込める、長さがほぼ無制限の を持っています。
div 内のデータは、変更時にタイムスタンプとともに MySQL データベースに保存されます。
ここでの目標は、ドキュメントの各部分がいつ作成されたかをユーザーに知らせる小さなメモを左側に表示することです (解決は日単位で行う必要があります)。
さて、問題は、情報 (いつ、どの部分が変更されたか) を保存するにはどうすればよいかということです。
これまでのところ、次のオプションを検討しましたが、どちらも改善可能と思われます。
- ユーザーがドキュメントの最後にあるサイトにアクセスするたびに、フラグを挿入します (たとえば、編集の開始を格納するクラスとデータ属性を持つ空のスパン)。このフラグは、save スクリプトが呼び出されたときにデータベースに保存されます。このオプションを使用すると、側面に日付を簡単に表示できます。空のスパンと同じ高さに配置すると、スパンが日付を教えてくれます。欠点は次のとおりです。ユーザーが誤ってタイムスタンプ スパンを削除する可能性があり、ユーザーが長い間ウィンドウを閉じない場合、新しいタイム スパン スパンが挿入されません (これはおそらく X 分ごとに新しいタイム スタンプ スパンを挿入することで回避できるため、削除部分はより関連性が高い)
- データが保存スクリプトに渡されるたびに文字列差分比較を実行し、タイムスタンプ付きの差分のみを保存しようとしています。次に、ページがロードされたら、すべてのパーツを正しい順序でまとめ、Javascript で日付のメモを正しい場所に配置します。+ 古いパーツを変更すると、2 つのパーツが 1 つになる可能性があります。全体として、このオプションは非常に複雑に聞こえます。
入力/アイデア/提案は大歓迎です!