diff options
author | Cheng-Han, Wu | 2016-02-11 14:35:25 -0600 |
---|---|---|
committer | Cheng-Han, Wu | 2016-02-11 14:35:25 -0600 |
commit | 8db142554fbe1c85aa8ffcdf0900b2855645939b (patch) | |
tree | ac1dea5d763f20a6138edfe51a4867953ccee92b /public/js/index.js | |
parent | 2a774064afecc7c7880a6e91467b7ad755e8f681 (diff) |
Updated rendering operations to improve performance
Diffstat (limited to '')
-rw-r--r-- | public/js/index.js | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/public/js/index.js b/public/js/index.js index 2e797ac3..3507e016 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -2132,10 +2132,15 @@ var lastResult = null; function updateViewInner() { if (currentMode == modeType.edit || !isDirty) return; var value = editor.getValue(); + var lastMeta = md.meta; md.meta = {}; - md.render(value); //only for get meta - parseMeta(md, ui.area.markdown, $('#toc'), $('#toc-affix')); var rendered = md.render(value); + // only render again when meta changed + if (JSON.stringify(md.meta) != JSON.stringify(lastMeta)) { + parseMeta(md, ui.area.markdown, $('#toc'), $('#toc-affix')); + rendered = md.render(value); + } + // prevent XSS rendered = preventXSS(rendered); var result = postProcess(rendered).children().toArray(); partialUpdate(result, lastResult, ui.area.markdown.children().toArray()); |