Created
March 28, 2013 23:29
-
-
Save duncansmart/5267653 to your computer and use it in GitHub Desktop.
Integrating ACE Editor in a progressive way
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<textarea name="my-xml-editor" data-editor="xml" rows="15"></textarea> | |
... | |
<textarea name="my-markdown-editor" data-editor="markdown" rows="15"></textarea> | |
... | |
<script src="//d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js"></script> | |
<script> | |
// Hook up ACE editor to all textareas with data-editor attribute | |
$(function () { | |
$('textarea[data-editor]').each(function () { | |
var textarea = $(this); | |
var mode = textarea.data('editor'); | |
var editDiv = $('<div>', { | |
position: 'absolute', | |
width: textarea.width(), | |
height: textarea.height(), | |
'class': textarea.attr('class') | |
}).insertBefore(textarea); | |
textarea.css('visibility', 'hidden'); | |
var editor = ace.edit(editDiv[0]); | |
editor.renderer.setShowGutter(false); | |
editor.getSession().setValue(textarea.val()); | |
editor.getSession().setMode("ace/mode/" + mode); | |
// editor.setTheme("ace/theme/idle_fingers"); | |
// copy back to textarea on form submit... | |
textarea.closest('form').submit(function () { | |
textarea.val(editor.getSession().getValue()); | |
}) | |
}); | |
}); | |
</script> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thank you for this. I got this working in my Bubble app. A few changes I had to make:
Other than above, it worked great for me! Here is all the JS I used:
NOTE: If you use the code below, see my notes above, but also uncomment line 18 after you confirm its working