bootstrap.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. require.config({
  2. paths: {
  3. 'easymde': '../addons/easymde/easymde.min',
  4. },
  5. shim: {
  6. 'easymde': ['css!../addons/easymde/css/easymde.min.css','css!../addons/easymde/css/font-awesome.min.css']
  7. }
  8. });
  9. require(['form', 'upload'], function(Form, Upload) {
  10. var _bindevent = Form.events.bindevent;
  11. Form.events.bindevent = function(form) {
  12. _bindevent.apply(this, [form]);
  13. try {
  14. if ($('.markdown', form).length > 0) {
  15. require(['easymde'], function(EasyMDE) {
  16. var insert = function(e, url, type) {
  17. var urlArr = url.split(/\,/);
  18. $.each(urlArr, function() {
  19. var url = Yzn.api.cdnurl(this, true);
  20. if (type && type == 'image') {
  21. e.codemirror.replaceSelection("\n" + '![输入图片说明](' + url + ')');
  22. } else {
  23. e.codemirror.replaceSelection("\n" + '[输入链接说明](' + url + ')');
  24. }
  25. });
  26. };
  27. var easymdes = {};
  28. $('.markdown', form).each(function() {
  29. var that = this;
  30. var id = $(that).attr('id');
  31. var easyMDE = new EasyMDE({
  32. element: that,
  33. promptURLs: true,
  34. autoDownloadFontAwesome:false,
  35. promptTexts: {
  36. link: "URL地址:",
  37. },
  38. forceSync: true,
  39. toolbar: [
  40. "bold", "strikethrough", "italic", "heading", "heading-2", "heading-3", "|",
  41. "code", "quote", "|",
  42. "unordered-list", "ordered-list", "table", "|",
  43. "link", "upload-image", "|", "preview", "side-by-side", "fullscreen", "|",
  44. "guide"
  45. ],
  46. lineNumbers: true,
  47. uploadImage: true,
  48. status: false,
  49. imageUploadFunction: (file, onSuccess, onError) => {
  50. Upload.api.send(file, function(data) {
  51. url = Yzn.api.cdnurl(data.url, true);
  52. if (file.type.indexOf("image") !== -1) {
  53. insert(easyMDE, url, 'image');
  54. } else {
  55. insert(easyMDE, url, 'file');
  56. }
  57. })
  58. }
  59. });
  60. /*easyMDE.codemirror.on("change", () => {
  61. $(that).val(easyMDE.value());
  62. });*/
  63. easymdes[id] = easyMDE;
  64. })
  65. })
  66. }
  67. } catch (e) {}
  68. }
  69. })