Esta es una no respuesta definitiva: eliminar una respuesta tentadora pero incorrecta para ayudar a otros a navegar hacia las respuestas correctas.
Puede parecer que la depuración destacaría el problema. Sin embargo, el único navegador en el que se produce el problema es IE, y en IE solo puede depurar el código que formaba parte del documento original. Para el código agregado dinámicamente, el depurador solo muestra el elemento del cuerpo como la instrucción actual, e IE afirma que el error ocurrió en un número de línea enorme.
Aquí hay una página web de muestra que demostrará este problema en IE:
<html>
<head>
<title>javascript debug test</title>
</head>
<body onload="attachScript();">
<script type="text/javascript">
function attachScript() {
var s = document.createElement("script");
s.setAttribute("type", "text/javascript");
document.body.appendChild(s);
s.text = "var a = document.getElementById('nonexistent'); alert(a.tagName);"
}
</script>
</body>
Esto me produjo el siguiente error:
Line: 54654408
Error: Object required