2020-2021
L’éditeur de texte Visual Studio Code permet entre autres choses de faire du développement d’application Web. Comme tous les outils, il faut une période d’apprentissage pour le maitriser. C’est un choix que vous devez faire. L’intérêt de VS Code est dans son caractère universel. Vous pourrez l’utiliser dans de nombreux travaux de développements comme python, Java, PHP, C++, javascript et bien d’autres.
Il propose des composants complémentaires qui ajoutent des capacités et des facilités qui augmentent votre productivité. En voici une liste non exhaustive :
git
, le gestionnaire de version, dans votre éditeur.Dans la suite du module, vous allez devoir créer des pages web qui associent des balises HTML, du code CSS et du code Javascript. Comme indiqué précédemment, il est important de faire le choix d’un environnement de développement qui contient :
Nous vous proposons d’utiliser VS Code comme éditeur de texte, votre navigateur comme outil de visualisation et le mécanisme de debug associé à VS Code.
Pour cela il faut :
Installez un environnement de développement qui vous permet simplement de créer une page html et qui vous permet de visualiser le résultat dans un navigateur.
DevWeb/Code/TP_prepa
qui sera le répertoire racine du projet pour la séance de TP. Dans le répertoire créez :
images
qui contiendra les imagesstyles
qui contiendra les fichiers de stylescripts
qui contiendra les sources javascriptindex.html
avec :
Le doctype HTML 5.
Précisez que le codage des caractères du document utilise l’encodage UTF-8.
Le titre “Travaux Pratiques - Préparation”.
Le contenu de la page est en français
Ajouter une balise h1
avec le contenu “Travaux Pratiques - Préparation”
Ajouter une balise ul
qui contient 5 item avec un contenu aléatoire
Il existe par défaut dans VS Code un mode Emmet qui permet de créer très rapidement et simplement ce type de contenu. Par exemple pour créer une liste non ordonnée avec un contenu aléatoire on utilisera :
ul>li*5>lorem10
Prenez un peu de temps pour comprendre et utiliser la syntaxe des commandes Emmet. Vous en aurez encore besoin pour créer des maquettes de sites rapidement.
Ajouter 10 paragraphes avec du texte aléatoire
Nous allons ajouter des images dans la page. Pour créer des pages avec des figures dans la préparation d’une maquette, il existe des sites qui proposent des images aléatoires libres de droit d’utilisation. Voici une liste non exhaustive de sites qui proposent des images :
images
)header
) avec un titre et un sous-titre suivi de 4 sections contenant chacune 2 paragraphes, une liste ordonnée avec 5 éléments aléatoires.Nous allons utiliser un fichier de style pour vérifier que l’environnement de développement fonctionne.
Voici un petit exemple de fichier de style :
body {
background-color: khaki;
}
h1 {
border-bottom: 1px brown solid ;
}
img {
max-width: 100%;
height: auto;
border-radius: 8px;
box-shadow: 0 13px 27px -5px hsl(240deg 30% 28% / 25%), 0 8px 16px -8px hsl(0deg 0% 0% / 30%), 0 -6px 16px -6px hsl(0deg 0% 0% / 3%);
}
style.css
du répertoire css
.style.css
créé précédemment dans votre fichier index.html
.Nous allons maintenant ajouter un fichier javascript dans la page index.html
.
HTML 5 propose des API qui permettent de dialoguer avec un environnement dans un cadre normé. C’est le cas pour le langage javascript.
Il y a plusieurs possibilités pour inclure du code javascript dans une page HTML5 :
Dans la partie entête avec la balise script :
<script src="js/global.js"></script>
solution préférable ou
<script>
alert("JavaScript c’est surpuissant !");
</script>
Dans le corps de la page html qu’il faut en général éviter.
Le lien entre le code HTML et un programme se fait en utilisant le DOM (Document Object Model) qui est une représentation dans la mémoire de la page HTML5 interprétée par le navigateur.
Le programme javascript est chargé dès qu’il apparait dans la page. Cela peut provoquer des lenteurs à l’affichage dans le navigateur. C’est pourquoi il est important d’associé avec la balise script l’attribut async
ou defer
.
async
: le code javascript est exécuté dès qu’il est disponible (sans vérifier que le reste du contenu est disponible) et ne bloque pas le chargement du reste de la page.defer
: le code javascript est chargé dans l’ordre d’apparition dans le document et le navigateur exécutera le code après l’analyse du reste du code.En conclusion l’attribut defer
est le plus sûr, mais peut retarder l’exécution du code. S’il n’y a pas de dépendance entre morceaux de code async
sera moins contraignant.
<script src="js/global.js" defer></script>
Ajoutez le paragraphe suivant dans votre page
<p id="nom">Saisir votre nom : </p>
Soit le code javascript suivant :
let para = document.getElementById("nom");
para.addEventListener("click", updateName);
function updateName() {
let name = prompt("Saisir un nouveau nom");
para.textContent = "Collaborateur : " + name;
}
Placez le code dans l’entête de votre page HTML et rechargez la page. Que se passe-t-il ?
Placez le code juste avant la fermeture de la balise body
de votre page HTML et rechargez la page. Que se passe-t-il ?
Supprimez le code précédent.
Créez un fichier script.js
dans le répertoire scripts
et importez-le dans votre page. Que se passe-t-il ?
Que faut-il utiliser comme attribut pour que cela fonctionne ?