diff --git a/static/webdev-editor.js b/static/webdev-editor.js index 4668155749528547aaed8a5d8bab04f7c7a154af..ed1fdbae0b05e2cd20249cea4753212440325ec8 100644 --- a/static/webdev-editor.js +++ b/static/webdev-editor.js @@ -102,15 +102,20 @@ ACOSWebdev.prototype.editorExecute = function (cb) { + ' display.err(error.message);\n' + ' throw error;\n' + '}\n' + + 'window.postMessage({state: "done"}, "*");\n' + 'window.parent.postMessage({state: "done"}, "*");\n' + '</script>\n' + (this.config.postExecuteHtml || '') + (this.config.postExecuteScript ? ('<script src="' + this.config.postExecuteScript + '"></script>\n') : '') + '</body>\n</html>\n'; - window.addEventListener('message', function (event) { + function onDone(event) { if (event.data.state == 'done') { + window.removeEventListener('message', onDone); + var h = $iframe.get(0).contentWindow.document.body.scrollHeight; + $iframe.css('height', h + 10 + 'px'); cb(); } - }); + } + window.addEventListener('message', onDone); $iframe.attr('src', 'javascript:window["contents"]'); };