From: Aleksander Ɓukasz Date: Mon, 8 Jul 2013 11:02:48 +0000 (+0200) Subject: Adding new document element before another one X-Git-Url: https://git.mdrn.pl/fnpeditor.git/commitdiff_plain/2a473a181f02b0183a6c333619999beaf73c87c0?ds=sidebyside Adding new document element before another one --- diff --git a/modules/documentCanvas/canvas/canvas.test3.js b/modules/documentCanvas/canvas/canvas.test3.js index a92ddb3..ac37e30 100644 --- a/modules/documentCanvas/canvas/canvas.test3.js +++ b/modules/documentCanvas/canvas/canvas.test3.js @@ -146,6 +146,15 @@ describe('Canvas', function() { expect(children.length).to.equal(2); expect(children[1].sameNode(added)); }); + + it('can put new Nodeelement before another element', function() { + var c = canvas.fromXML('
'), + div = c.doc().children()[0], + added = div.before({tag: 'header', klass: 'some.class'}), + children = c.doc().children(); + expect(children.length).to.equal(2); + expect(children[0].sameNode(added)); + }); }); describe('wrapping', function() { diff --git a/modules/documentCanvas/canvas/documentElement.js b/modules/documentCanvas/canvas/documentElement.js index d1973b8..5457b83 100644 --- a/modules/documentCanvas/canvas/documentElement.js +++ b/modules/documentCanvas/canvas/documentElement.js @@ -75,6 +75,11 @@ $.extend(DocumentNodeElement.prototype, { this.$element.append(to_append); return documentElementFromHTMLElement(to_append); }, + before: function(params) { + var to_append = DocumentNodeElement.createDOM(params.tag, params.klass); + this.$element.before(to_append); + return documentElementFromHTMLElement(to_append); + }, after: function(params) { var to_append = DocumentNodeElement.createDOM(params.tag, params.klass); this.$element.after(to_append);