Pourquoi certains sites (ou annonceurs qui fournissent du code javascript aux clients) utilisent une technique de fractionnement des balises <script>et / ou des </script>balises dans les document.write()appels?
J'ai remarqué qu'Amazon le fait également, par exemple:
<script type='text/javascript'>
if (typeof window['jQuery'] == 'undefined') document.write('<scr'+'ipt type="text/javascript" src="http://z-ecx.images-amazon.com/images/G/01/javascripts/lib/jquery/jquery-1.2.6.pack._V265113567_.js"></sc'+'ript>');
</script>
\/est une séquence d'échappement valide pour/, alors pourquoi ne pas simplement l'utiliser à la place de ces échappements littéraux de chaîne pour<? Par exempledocument.write('<script src=foo.js><\/script>');. En outre, ce</script>n'est pas la seule séquence de caractères qui peut fermer un<script>élément. Plus d'infos ici: mathiasbynens.be/notes/etago