<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, minimal-ui"> <title>Markdown preview</title> <link href="http://thomasf.github.io/solarized-css/solarized-dark.min.css" rel="stylesheet"></link> <style> code.json { line-height: 1.2em; } </style> <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <script> (function($, undefined) { var socket = new WebSocket("ws://localhost:7379"); socket.onopen = function() { console.log("Connection established."); }; socket.onclose = function(event) { if (event.wasClean) { alert('Connection closed gracefully.'); } else { alert('Connection terminated.'); } console.log('Code: ' + event.code + ' reason: ' + event.reason); }; socket.onmessage = function(event) { loadCSS($(event.data).find("#style").text()); $("#markdown-body").html($(event.data).find("#content").html()); var scroll = $(document).height() * ($(event.data).find("#position-percentage").html() / 100); $("html, body").animate({ scrollTop: scroll }, 600); }; socket.onerror = function(error) { alert("Error: " + error.message); }; loadCSS = function(href) { var cssLink = $("<link rel='stylesheet' type='text/css' href='"+href+"'>"); $("link[rel='stylesheet']").remove(); $("head").append(cssLink); }; })(jQuery); </script> </head> <body> <article id="markdown-body"> <p>Markdown preview</p> </article> </body> </html>