js/plugins/drupalentity/plugin.js | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/js/plugins/drupalentity/plugin.js b/js/plugins/drupalentity/plugin.js index 0638ff9..a1b5c10 100644 --- a/js/plugins/drupalentity/plugin.js +++ b/js/plugins/drupalentity/plugin.js @@ -154,17 +154,18 @@ _setUpDynamicEditables() { // Now that the caption is available in the DOM, make it editable. - this.initEditable('caption', this.definition.editables.caption); - // And ensure that any changes made to it are persisted. - var captionDomNode = this.editables.caption.$; - var config = { characterData: true, attributes: false, childList: true, subtree: true }; - var widget = this; - this.captionEditableMutationObserver = new MutationObserver(function() { - var entityAttributes = CKEDITOR.tools.clone(widget.data.attributes); - entityAttributes['data-caption'] = captionDomNode.innerHTML; - widget.setData('attributes', entityAttributes); - }); - this.captionEditableMutationObserver.observe(captionDomNode, config); + if (this.initEditable('caption', this.definition.editables.caption)) { + // And ensure that any changes made to it are persisted. + var captionDomNode = this.editables.caption.$; + var config = {characterData: true, attributes: false, childList: true, subtree: true}; + var widget = this; + this.captionEditableMutationObserver = new MutationObserver(function () { + var entityAttributes = CKEDITOR.tools.clone(widget.data.attributes); + entityAttributes['data-caption'] = captionDomNode.innerHTML; + widget.setData('attributes', entityAttributes); + }); + this.captionEditableMutationObserver.observe(captionDomNode, config); + } }, _tearDownDynamicEditables() {