There have been a number of backwards incompatible changes in this release which had to be done to fix some bugs and remove the jQuery dependency.
In order to fix some issues around re-sizing and resizing the editor in a hidden
parent, the theme has been updated to use flex-box
.
Old themes will need to be updated to the new CSS and HTML in order to work.
Support for IE < 10 has been dropped so themes can use more modern CSS now.
The editor now supports SVG icons sets. The default bundled sets are monocons and material design icons. Themes will need to be updated to handle them.
Finally jquery.sceditor.default.css
has been moved to themes/content/default.css
and jquery.sceditor.default.min.css
has been moved to themes/content/default.min.css
.
The BBCode and XHTML plugins have now been moved to formats
.
They work the same as before except to initialise them, you need to specify the
format
option when creating the editor instead of adding them to the plugins
option.
For example:
const textarea = ...
sceditor.create(textarea, {
format: 'bbcode'
});
To access the formats use the formats
property on the sceditor object:
sceditor.formats.bbcode.add('custom-bbcode', {
...
});
The nodechanged
event now stores the old and new nodes in the detail
property
of the event. For example:
function nodechangedHandler(e) {
var oldNode = e.detail.oldNode;
var newNode = e.detail.newNode;
}
The valuechanged
now stores the raw value detail
property of the event.
For example:
function valuechangedHandler(e) {
var rawValue = e.detail.rawValue;
var newNode = e.detail.newNode;
}
The getContentAreaContainer
and getBody
methods now return plain DOM
elements instead of jQuery objects and the dom.parseHTML
function now returns
a DOM fragment.
Calling the jQuery testarea.data('sceditor')
method no longer returns the
SCEditor instance, instead use sceditor.instance(testarea)
.
The deprecated jQuery.fn.sceditorBBCodePlugin()
method has been removed as has
the deprecated $.sceditorBBCodePlugin
variable.
The updateStyleCache
method has been removed from the editor.
The BBCode elementToBbcode()
method now takes a DOM node instead of a jQuery
object and the element passed to the BBCode format:
function is now a plain
DOM node.
The second argument to the XHTML conv
function is no longer supplied, only the
plain DOM node.
The forceNewLineAfter
property has been removed from the commands object.
It is now handled automatically.
The caller
argument to the exec
and txtExec
methods is now a
HTMLDivElement and not a jQuery object.
The signalToWysiwyg
and signalToSource
methods have been removed.
Plugins that used them should be migrated to formats instead.