Bonjour les zestes.
Je voulais rédiger un billet traitant du sujet, mais je n’en n’ai plus envie.
L’idée était de reprendre ce code pour le moderniser et le rendre conforme aux bonnes pratiques.
Si quelqu’un le souhaite, il peut reprendre/modifier le code et rédiger un billet dessus.
Voici le code actuel :
'use strict';
const max_width = window.innerWidth - 30;
const max_height = window.innerHeight - 20;
const max_flocons = 9;
const TWO_PI = 2 * Math.PI;
const img_flocon = 'flocon.png';
function Flocon() {
this.y = Math.random() * max_height;
this.vy = 0.6 + Math.random();
this.remonter = function() {
this.y = -20;
this.vy = 0.6 + Math.random();
this.id_html.src = img_flocon;
this.stl.left = Math.random() * max_width + 'px';
};
// Élement HTML associé au flocon
this.id_html = document.createElement('img');
this.id_html.src = img_flocon;
this.id_html.style.position = 'absolute';
this.stl = this.id_html.style;
this.stl.top = this.y + 'px';
this.stl.left = Math.random() * max_width + 'px';
document.body.appendChild(this.id_html);
}
let flocons;
document.addEventListener('DOMContentLoaded', () => {
flocons = Array(max_flocons).fill(0).map(e => new Flocon());
window.requestAnimationFrame(neige);
});
function neige() {
flocons.forEach(flocon => {
if (flocon.y >= max_height) {
flocon.remonter();
}
else {
flocon.y += flocon.vy;
}
flocon.stl.top = flocon.y + 'px';
});
window.requestAnimationFrame(neige);
}
Le code est-il conforme aux règles de bonnes pratiques sachant que j’ai tenu compte des remarques de ce sujet ?
+0
-0