editor.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. $(document).ready(function() {
  2. var $editor = $('#editor');
  3. var $editorJs = $('#editor-javascript');
  4. var $editorHtml = $('#editor-html');
  5. var $htmlContent = $('#html-content');
  6. var activeTab = 'show-html';
  7. var editor;
  8. function initEditor(mode) {
  9. editor = ace.edit("editor");
  10. editor.setTheme("ace/theme/eclipse");
  11. editor.getSession().setMode("ace/mode/" + mode);
  12. editor.getSession().setUseWrapMode(true);
  13. }
  14. // editor.getSession().on('change', function() {
  15. // console.log(arguments)
  16. // });
  17. function setActiveTab(which) {
  18. var elementId = 'show-' + which;
  19. $('#' + activeTab).removeClass('active');
  20. activeTab = elementId;
  21. $('#' + elementId).addClass('active');
  22. var ed = $('#editor-' + which);
  23. initEditor(which);
  24. editor.getSession().setValue(ed[0].innerHTML);
  25. }
  26. $('#tabs button').click(function() {
  27. var which = $(this).prop('id').substr(5);
  28. setActiveTab(which);
  29. })
  30. function loadExample() {
  31. var exampleName = $(this).val();
  32. var serverPath = 'exemples/' + exampleName + '/';
  33. $.get(serverPath + 'script.js', function(javascript) {
  34. $editorJs.html(javascript);
  35. }, 'text');
  36. $.get(serverPath + '/contenu.html', function(html) {
  37. $editorHtml.html(html);
  38. $htmlContent.html(html);
  39. setActiveTab('html');
  40. loadJS(serverPath + 'script.js');
  41. }, 'text');
  42. }
  43. var fileSelect = $('#fileSelect');
  44. fileSelect.change(loadExample);
  45. // setActiveTab('html');
  46. });