Maison > interface Web > js tutoriel > Comment inclure dynamiquement des scripts externes avec des URL variables contenant des commandes « document.write » ?

Comment inclure dynamiquement des scripts externes avec des URL variables contenant des commandes « document.write » ?

Barbara Streisand
Libérer: 2024-11-02 20:50:02
original
632 Les gens l'ont consulté

How to Dynamically Include External Scripts with Variable URLs that Contain `document.write` Commands?

Inclure dynamiquement des scripts externes avec des URL variables

Lors de l'ajout dynamique de balises de script à une page Web, il est essentiel de prendre en compte les scripts avec des attributs src qui peuvent inclure les commandes document.write. Cela peut perturber le comportement de chargement normal.

Le problème

Dans des scénarios ordinaires, l'utilisation du code suivant pour inclure un script de "source.js" fonctionne bien :

<script type="text/javascript" src="source.js"></script>
Copier après la connexion

Cependant, "source.js" peut contenir le contenu inhabituel suivant :

document.write('<script type="text/javascript">')
document.write('alert("hello world")')
document.write('</script>')
document.write('<p>goodbye world</p>')
Copier après la connexion

La solution

L'utilisation de la méthode ordinaire ne gère pas correctement ce scénario. Au lieu de cela, vous pouvez utiliser la technique suivante pour ajouter dynamiquement des scripts avec la variable srcs :

var my_awesome_script = document.createElement('script');

my_awesome_script.setAttribute('src','http://example.com/site.js');

document.head.appendChild(my_awesome_script);
Copier après la connexion

Cette méthode crée un nouvel élément de script, définit son attribut src et l'ajoute au du document. Cela fonctionne même si le src du script inclut les commandes document.write.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal