2017-07-25 6 views
1

Je peux voir le code dans la vue Elément dans Chrome, mais pas dans la source car il est chargé par la fonction document.write.Comment faire pour déboguer un code JavaScript lorsqu'il est chargé par document.write?

Comment définir un point d'arrêt dans ce cas?

+1

Il doit y avoir une source quelque part, vérifiez l'onglet réseau et explorez les fichiers .js si nécessaire. – dandavis

+0

Ajouter le mot-clé 'debugger' devrait suffire dans le code que vous essayez d'ajouter – JoseAPL

+2

Veuillez ne pas vandaliser vos messages. En postant sur le réseau Stack Exchange, vous avez accordé un droit non révocable à SE de distribuer ce contenu (sous la licence [CC BY-SA 3.0] (https://creativecommons.org/licenses/by-sa/3.0 /)). Par la politique de SE, tout vandalisme sera annulé. Si vous souhaitez dissocier ce message de votre compte, voir [Quel est le chemin approprié pour une demande de dissociation?] (Https://meta.stackoverflow.com/q/323395) –

Répondre

1

Je suppose que vous avez accès au code source qui génère le document.write, vous pouvez ajouter un appel au « debugger » comme ceci:

<script> 
document.write('<sc' + 'ript> debugger; alert(0);</s' + 'cript>'); 
</script> 

Je vous ai ouvert le débogueur sur le chrome, il arrêtera l'exécution et affichera le code généré dans l'onglet Sources.

+0

Pourquoi cela doit-il être ' débogueur? ; alert (0); 'not' '? –

+0

ça a marché, merci! –

+0

https://stackoverflow.com/questions/236073/why-split-the-script-tag-when-writing-it-with-document-write –