X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/29a87f7c5b2ddddf7c5c738c4747ffd6f6bb35bb..84f2fdcdf9bd8e62fbecaa9a47e7418cc8a4f858:/src/smartxml/smartxml.js diff --git a/src/smartxml/smartxml.js b/src/smartxml/smartxml.js index 502eda6..f9f78e8 100644 --- a/src/smartxml/smartxml.js +++ b/src/smartxml/smartxml.js @@ -123,9 +123,17 @@ $.extend(DocumentNode.prototype, { }, isSurroundedByTextNodes: function() { - var prev = this.prev(), - next = this.next(); - return prev && (prev.nodeType === Node.TEXT_NODE) && next && (next.nodeType === Node.TEXT_NODE); + return this.isPrecededByTextNode() && this.isFollowedByTextNode(); + }, + + isPrecededByTextNode: function() { + var prev = this.prev(); + return prev && prev.nodeType === Node.TEXT_NODE; + }, + + isFollowedByTextNode: function() { + var next = this.next(); + return next && next.nodeType === Node.TEXT_NODE; }, triggerChangeEvent: function(type, metaData, origParent, nodeWasContained) { @@ -168,12 +176,16 @@ ElementNode.prototype = Object.create(DocumentNode.prototype); $.extend(ElementNode.prototype, { nodeType: Node.ELEMENT_NODE, - setData: function(key, value) { - if(value !== undefined) { - this._$.data(key, value); + setData: function(arg1, arg2) { + if(arguments.length === 2) { + if(_.isUndefined(arg2)) { + this._$.removeData(arg1); + } else { + this._$.data(arg1, arg2); + } } else { this._$.removeData(_.keys(this._$.data())); - this._$.data(key); + this._$.data(arg1); } },