Question : Résoudre l'énigme des balises de script avec src et Content
Considérez l'exemple suivant tiré du bouton 1 de Google :
<pre class="brush:php;toolbar:false"><script type="text/javascript" src="https://apis.google.com/js/plusone.js"> {"parsetags": "explicit"} </script>
Cette balise de script possède à la fois un attribut src et un contenu. Quelles complexités cette combinaison introduit-elle et comment affecte-t-elle l'exécution du navigateur ?
Réponse : divergence du navigateur et solution de Google
La coexistence de src et de contenu dans une balise de script évoque des interprétations divergentes parmi les navigateurs. Certains navigateurs donnent la priorité à l'exécution du contenu uniquement si l'attribut src est résolu avec succès, tandis que d'autres tentent de l'exécuter quel que soit le succès de l'inclusion du script src.
Cependant, ce comportement n'est pas fiable et contredit les spécifications HTML5, ce qui en fait un Il est préférable d'éviter cette pratique.
Dans ce cas précis, Google ne dépend d'aucun comportement particulier du navigateur. Le contenu inclus est simplement un objet littéral, son exécution ne déclenchant rien de plus qu'une erreur silencieuse.
Au lieu de cela, le code de Google analyse lui-même le contenu de la balise de script, adaptant son comportement en conséquence. Cela leur permet d'atténuer les incohérences du navigateur tout en conservant la fonctionnalité souhaitée.
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!