A Javascript interpretation of Lilypond would be extremely hard: A lilypond score file is not really a notation file at all, but source code in the Scheme programming language that already has quite a lot of handy macros implemented. There has been almost no work done in parsing anything but the simplest Lilypond notational files in any language but Scheme (the Abjad Python toolkit comes the closest, but mainly renders into Lilypond; not vice-versa). My sense is that someone would need to write a Scheme interpreter in Javascript before porting Lilypond would be possible. (Though the rendering is beautiful)
An implementation of VexFlow would be easier to adapt. I've ported a good chunk of the music21 python library in javascript as music21j -- it uses VexFlow for score rendering and MIDI.js for sound; just need to port the python versions of the ABC and MusicXML parsers to give two common formats for use.
See this blog post for an example (using a tiny notation format, but could be expanded to use ABC instead) of how to render in the browser from <div class="music21 tinyNotation"> tags just by adding a single script tag to the head:
<script data-main='http://web.mit.edu/music21/music21j/src/music21' src='http://web.mit.edu/music21/music21j/ext/require/require.js' warnBanner='no'></script>