Puis-je charger un code javascript à l'aide de <lien> tag?
Puis-je charger un code javascript à l'aide de <link>
tag dans mon site web ?
Par exemple j'ai un fichier javascript, test.js
, qui contient le code simple alert('hello');
Puis-je faire la fenêtre pop-up s'affichent à l'aide:
<link href="test.js"></link>
link
balise est normalement utilisée pour le CSS, y compris. Entendez-vous lea
tag (ancre)?
Vous devez vous connecter pour publier un commentaire.
Pas. Il y avait une proposition visant à permettre:
par analogie, pour les feuilles de style. C'est même cité en exemple dans le DTD HTML 4, mais le navigateur de mise en œuvre n'est jamais arrivé. Dommage, car cela aurait été beaucoup plus propre.
Vous devez utiliser le
<script>
balise pour inclure des fichiers sources en JavaScript:La balise de fin doit être la pleine
</script>
, ne pas abréger le chemin, vous pouvez avec certaines balises comme dans<script type="text/javascript" src="..."/>
.Oui, alerte énoncés dans la source apparaît lorsqu'ils sont évalués par le navigateur.
Pour plus d'informations sur les utilisations de la
<link>
tag, voir w3.org.Justification Possible pourquoi ne pas
link
éléments sont autorisés uniquement lorsque "le contenu de Métadonnées" est autorisé, généralementhead
, et non pas dans lebody
. Voir: Les contextes dans lesquels cet élément peut être utilisé. Tous les éléments qui vont dans lebody
de séparer les éléments pour eux:img
,iframe
, etc.link
éléments doit être vide, etscript
peut être non vide. Voir: Modèle de contenuPar conséquent, il est naturel d'avoir un élément séparé pour le JavaScript, et puisque nous devons avoir un élément séparé, il est préférable de ne pas dupliquer les fonctionnalités avec
link
.Cette théorie explique aussi pourquoi
img
etstyle
ont des éléments distincts:img
peuvent être placés dans le corps, de sorte qu'il devient un élément à part, même s'il doit être vide.style
peut être non vide, de sorte qu'il devient un élément à part, même si jusqu'à HTML5, cela ne pourrait pas être placé dans lebody
(maintenant, il peut viascoped
, mais encore de ne pas inclure des scripts externes).Moderne navigateurs prennent en charge la
preload
mot-clé, qui est utilisé pour le chargement de diverses ressources, y compris les scripts. De MDN:Code JavaScript en général, être chargé à l'aide d'une balise de script, comme suit:
Pas. Une balise de Lien est comme pour les fichiers CSS ou pour relationnel liens (comme
next
).Ce n'est pas la façon de charger du code javascript dans la page. Vous devez utiliser le
<script>
tag:L'autre option pour cela, vous pouvez insérer dynamiquement un fichier de script dans le document en cours, par la création d'une balise de SCRIPT, en définissant son attribut "src" de l'URI du script, et ensuite de l'insérer en tant qu'enfant de la page, TÊTE de nœud.
De faire ces choses vont aller au navigateur d'aller chercher le fichier de script, la charger dans le document, et de l'exécuter.
Pour répondre directement à votre question, non. Pas par cette méthode. Cependant, j'ai été conduit à cette question lors de la recherche d'un problème similaire qui m'amènent à cette question. Voir les réponses déjà fournies, qui pour la plupart sont corrects, je suis allé vérifier la syntaxe sur http://w3schools.com/ . Il semble que le HTML5 il y a un nouvel attribut pour les éléments de script en html.
Ce nouvel attribut permet fichiers javascript être différée ou chargée et exécutée de manière asynchrone (à ne pas confondre avec l'AJAX).
Je vais juste laisser le lien ici et laissez-vous renseignez-vous sur les détails vous-même car il est fourni sur internet.
http://www.w3schools.com/tags/att_script_async.asp
async
attribut est lié à la question de départ à tous. Si je comprends bien, la question est plus sur la syntaxe de référence à un fichier JS à partir de code HTML.