Proper integration of live reload with automatic injection

This commit is contained in:
spf13
2014-05-16 17:49:27 -04:00
parent 60ed5bda2b
commit be1ee22032
8 changed files with 224 additions and 121 deletions

View File

@@ -0,0 +1,19 @@
package transform
import "bytes"
func LiveReloadInject(content []byte) []byte {
match := []byte("</body>")
replace := []byte(`<script>document.write('<script src="http://'
+ (location.host || 'localhost').split(':')[0]
+ ':1313/livereload.js?mindelay=10"></'
+ 'script>')</script></body>`)
newcontent := bytes.Replace(content, match, replace, -1)
if len(newcontent) == len(content) {
match := []byte("</BODY>")
newcontent = bytes.Replace(content, match, replace, -1)
}
return newcontent
}