De mon récent question, j'ai déjà créé une certaine fonction JavaScript pour le chargement dynamique vue partielle. Donc, je ne peux pas déboguer tout le chargement dynamique de code JavaScript. Parce que tous chargés JavaScript sera évalué par "eval" de la fonction.
Cependant, j'ai trouvé un moyen de créer de nouveaux JavaScript en utilisant le script suivant pour créer dynamiquement script dans l'en-tête du document en cours. Tous les scripts chargés seront affichés dans les DOM HTML (que vous pouvez utiliser un débogueur pour le trouver).
var script = document.createElement('script')
script.setAttribute("type","text/javascript")
script.text = "alert('Test!');";
document.getElementsByTagName('head')[0].appendChild(script);
En passant, la plupart des débogueur (IE8 Barre d'outils du Développeur, Firebug et Google Chrome) ne peut pas définir des points d'arrêt dans un script dynamique. Parce que debuggable script doit être chargé à la première fois après le chargement de la page.
Avez-vous des idée pour le débogage de script dynamique de contenu ou d'un fichier?
Mise à jour 1 - Ajouter du code pour les tests
Vous pouvez utiliser ce fichier xhtml pour essayer de déboguer someVariable valeur.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Dynamic Loading Script Testing</title>
<script type="text/javascript">
function page_load()
{
var script = document.createElement('script')
script.setAttribute("id", "dynamicLoadingScript");
script.setAttribute("type","text/javascript");
script.text = "var someVariable = 0;\n" +
"someVariable = window.outerWidth;\n" +
"alert(someVariable);";
document.getElementsByTagName('head')[0].appendChild(script);
}
</script>
</head>
<body onload="page_load();">
</body>
</html>
De réponse, je viens de le tester dans FireBug. Le résultat doit être affiché comme ci-dessous des images.
S'il vous plaît regardez "dynamicLoadingScript" script est ajouté après le chargement de la page.
Mais il n'a pas trouvé dans l'onglet script de FireBug
Mise à jour 2 - Créer de Débogage point d'arrêt dans le chargement dynamique de script
Les deux images ci-dessus montrent l'insertion "débogueur;" instruction dans une certaine ligne de script peut l'incendie point d'arrêt dans le chargement dynamique de script. Toutefois, les deux débogueurs de ne pas montrer tout le code au point d'arrêt. Par conséquent, il est inutile pour cela.
Merci,