Why am I getting…
SyntaxError: unterminated string literal
…in Firefox and…
Uncaught SyntaxError: Invalid or unexpected token
…in Chrome when I run…
$(document).ready(function () {
function addJSBeforeEndBody(code) {
$('body').append('<script>' + code + '</script>');
}
addJSBeforeEndBody('$(document).ready(function() { console.log("I never end up here."); });');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Break up the string
"</script>"(in the javascript code); it will be interpreted as an actual closing script tag rather than the string literal you intend.