Автоматически сохраняет содержимое редактора (по умолчанию на 1 день) в локальное хранилище (localStorage).
Это удалит автоматически сохраненное содержимое при отправке формы, содержащей редактор, или при sceditor.plugins.autosave.clear() ручном вызове метода. При использовании пользовательского метода storageKeyего необходимо передать в качестве первого аргумента, clear()если требуется ручная очистка автоматически сохраненных данных.
Чтобы включить плагин для работы с обычным текстом, добавьте autosave в plugins опцию, например:
<script>
sceditor.create(textarea, {
plugins: 'autosave',
style: 'minified/themes/content/default.min.css'
});
</script>
Вот и всё! Теперь содержимое редактора будет сохраняться в localStorage в течение 1 дня.
Чтобы указать параметры автосохранения, добавьте autosave в объект options свойство с желаемыми параметрами, например:
<script>
sceditor.create(textarea, {
plugins: 'dragdrop',
style: 'minified/themes/content/default.min.css',
autosave: {
storageKey: ...,
saveHandler: function (data) {
...
}
}
});
</script>
Плагин autosave поддерживает следующие параметры:
autosave: {
// The storage key to use for storing the draft in local storage.
// Key should start with "sce-autodraft-" for the autosave plugin to
// remove it if it is passed the expires.
// Defaults to "sce-autodraft-" plus the path and query string:
storageKey: 'sce-autodraft-' + location.pathname + location.search;,
// Save handler function, see below for data object
saveHandler: function (data) {
...
},
// Load handler function, see below for data object
loadHandler: function () {
...
return data;
},
// Number of milliseconds to keep drafts before clearing when using the
// default load and save handlers.
// Defaults to 24 hrs
expires: 86400000
}
Обработчик сохранения будет вызван с определенным значением, а обработчик загрузки должен вернуть следующий объект:
{
// Object - contains the source mode caret position
caret: {
// Number - source editor caret start position
start: Number
// Number - source editor caret end position
end: Number
},
// Boolean - if in source mode
sourceMode: Boolean,
// String - editors contents
value: String,
// Number - current timestamp
time: Number
}