3 votes

Une question JavaScript très basique sur la fonction document.write

Je suis novice en matière de JavaScript et de jQuery. C'est le seul code que j'ai sur une page vide :

<script type="text/javascript" src="jquery.min.js"></script>

    <script type="text/javascript">
        $(document).ready(function() {

            document.write('Hello World');

        });
    </script>

Lorsque je charge la page dans un navigateur (utilisant FireFox), l'icône d'état ainsi que la zone favicon de l'onglet ouvert affichent des symboles de chargement, comme pour indiquer que la fonction document.write est exécutée en permanence dans une boucle.

Pourquoi ? J'essaie simplement de dire "une fois que la page est prête, la chaîne Hello World est affichée à l'écran une seule fois". Qu'est-ce qui ne va pas ici ?

p.s. J'ai remarqué que si j'enlève la partie document.ready du code, il n'y a pas de boucle. Je ne sais pas pourquoi le gestionnaire de l'événement "ready" est à l'origine de ce problème.

6voto

Yahel Points 21516

document.write si elle est exécutée après le chargement du DOM, elle réécrit complètement la page. Il ne peut être exécuté que pendant le chargement du DOM, pas après, et $(document).ready() se produit après que le DOM a terminé le chargement.

Vous cherchez à append() .

<script type="text/javascript">
    $(document).ready(function() {

        $('body').append('Hello World');

    });
</script>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X