Script modifié (chargé de manière asynchrone, avec manipulation DOM) :

var container = document.getElementById(\\\"container\\\");var content = document.createElement(\\\"span\\\");content.style.color = \\\"red\\\";content.innerHTML = \\\"Hello\\\";container.appendChild(content);
","image":"http://www.luping.net/uploads/20241023/17296754466718c0b652a9a.jpg","datePublished":"2024-11-07T17:21:27+08:00","dateModified":"2024-11-07T17:21:27+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"

Comment résoudre l'erreur « Il n'est pas possible d'écrire dans un document à partir d'un script externe chargé de manière asynchrone » ?

Publié le 2024-11-07
Parcourir:706

How to Resolve \

Erreur : "Il n'est pas possible d'écrire dans un document à partir d'un script externe chargé de manière asynchrone"

Problème :

Chargement asynchrone de les scripts peuvent entraîner des problèmes lors de la tentative de modification d'un document à l'aide de document.write(). Après l'exécution du chargement de la page, un script est téléchargé de manière asynchrone mais échoue avec le message de console « Il n'est pas possible d'écrire dans un document à partir d'un script externe chargé de manière asynchrone à moins qu'il ne soit explicitement ouvert. »

Explication :

Les scripts chargés de manière asynchrone s'exécutent une fois le document analysé et fermé. Par conséquent, les opérations telles que document.write() deviennent indisponibles à partir de ces scripts.

Solution :

Pour résoudre ce problème, remplacez les appels document.write() par des manipulations DOM explicites. Cela implique de créer des éléments DOM et de les insérer dans l'élément parent à l'aide de appendChild(), insertBefore() ou de définir innerHTML.

Exemple :

Script original (en ligne, avec document. write() :

Script modifié (chargé de manière asynchrone, avec manipulation DOM) :

var container = document.getElementById("container");
var content = document.createElement("span");
content.style.color = "red";
content.innerHTML = "Hello";
container.appendChild(content);
Déclaration de sortie Cet article est réimprimé à l'adresse : 1729404376. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3