Developer Center website. https://developers.write.as
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.0 KiB

  1. <html>
  2. <head>
  3. <title>Markdown preview demo</title>
  4. <link rel="stylesheet" type="text/css" href="https://write.as/css/write.354bde4c8aba9afdc8e24.css" />
  5. <style>
  6. h1#markdown {
  7. margin: 1em 0;
  8. }
  9. textarea {
  10. margin: 2em 0 1em;
  11. min-height: 10em;
  12. font-size: 1em;
  13. border: 1px solid #ccc !important;
  14. padding: 1em;
  15. border-radius: 0.25em;
  16. resize: vertical;
  17. }
  18. </style>
  19. <script>
  20. function preview() {
  21. var $submit = document.querySelector('input[type=submit]');
  22. $submit.disabled = true;
  23. $submit.value = '...';
  24. var http = new XMLHttpRequest();
  25. var url = "https://write.as/api/markdown";
  26. var params = {
  27. "raw_body": document.querySelector('#writer').value,
  28. }
  29. http.open("POST", url, true);
  30. http.setRequestHeader("Content-type", "application/json");
  31. http.onreadystatechange = function() {
  32. if (http.readyState == 4) {
  33. $submit.disabled = false;
  34. $submit.value = 'Preview';
  35. if (http.status == 200) {
  36. data = JSON.parse(http.responseText);
  37. document.querySelector('#preview').innerHTML = data.data.body;
  38. } else {
  39. alert("Failed: "+http.status);
  40. }
  41. }
  42. }
  43. http.send(JSON.stringify(params));
  44. }
  45. </script>
  46. </head>
  47. <body id="post">
  48. <div class="content-container tight" style="margin-bottom: 0;">
  49. <h1 id="markdown">Markdown Preview</h1>
  50. <p>This uses the Write.as / WriteFreely API to generate HTML from the given Markdown content.</p>
  51. <p><a href="https://developers.write.as/docs/api/#render-markdown">Read the documentation</a>.</p>
  52. </div>
  53. <div class="content-container">
  54. <form method="post" action="https://write.as/api/markdown" onsubmit="preview(); return false;">
  55. <textarea id="writer" name="raw_body" placeholder="Write..." class="norm" autofocus># Test out some Markdown
  56. Enter anything here and press **Preview** to see what it looks like.</textarea>
  57. <input type="submit" value="Preview" />
  58. </form>
  59. </div>
  60. <hr />
  61. <article class="norm h-entry" id="preview"></article>
  62. </body>
  63. </html>