Skip to content

Instantly share code, notes, and snippets.

View 384400's full-sized avatar

384400 384400

  • Bordeaux (Woeid, 580778), France, Europe, Earth, Solar System, Mikly Way
View GitHub Profile
@384400
384400 / -voies.html
Last active December 8, 2023 09:26
Liste exhaustive des types de voies (rue, avenue...) en France, d'après le Ministère de l'Intérieur
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Liste exhaustive des types de voies (rue, avenue...) en France, d'après le Ministère de l'Intérieur</title>
</head>
<body>
<ul>
<li>abbaye</li>
<li>agglomération</li>
@384400
384400 / benchmark-javascript.md
Created September 14, 2015 15:24
[JavaScript] Mesurer les performances d'un code en JavaScript

Comment mesurer les performances d'un code en JavaScript ?

Quand on a le choix entre deux (groupes d') instructions, il peut être opportun d'en comparer les performances avant de prolonger un développement. L'intérêt est assurément théorique : aucun utilisateur lambda ne lancera 20 000 itérations ! Cependant, une comparaison peut constituer une aide au choix.

En matière de Benchmarking, [jsPerf] (https://jsperf.com/) constitue le site de référence dans le monde du développement. Néanmoins, l'inscription est plutôt fastidieuse.

Voici pourquoi, nous présentons un code rudimentaire, sans doute perfectible, qui permet de mesurer facilement la performance d'un code en JavaScript. Ce code a été mentionné dans une conversation sur [stackoverflow] (http://stackoverflow.com/questions/111368/how-do-you-performance-test-javascript-code).

Les résultats du test s'affichent dans la console du navigateur. Ici, [Google Chrome] (https://www.google.com/chrome/browser/desktop/index.html) est commode d'emploi.

@384400
384400 / -readme.md
Last active August 9, 2019 16:42
[JavaScript] Afficher et cacher des élements en JavaScript pur

Comment afficher et cacher des élements en JavaScript pur ?

jQuery permet facilement de cacher ou d'afficher des éléments avec les fonctions .hide() et .show() : ainsi pouvons-nous cacher les éléments possédant une classe identique et afficher un élément possédant un identifiant particulier. En JavaScript pur, la fonction hide nécessite le recours à une boucle.

Par exemple, nous voulons afficher les jours de la semaine en espagnol, en français ou en anglais au clic de l'utilisateur. Si ce dernier demande l'affichage en langue française, les textes dans la langue de Cervantes ou de Shakespeare seront occultés. Si ce dernier demande ensuite l'affichage en langue espagnole, les textes dans la langue de Molière ou de Shakespeare seront occultés.

Avec jQuery, nous utiliserions une syntaxe comme...

<script>
@384400
384400 / -support.md
Last active February 5, 2018 18:15
[Html] [JavaScript] [Css] Utiliser la propriété @supports

Comment utiliser la propriété @supports ?

La règle @supports permet une requête de fonctionnalité, comme l'expose Mozilla Developper Network : @supports.

Raphaël Goetter explique que la reconnaissance des propriétés avec @supports peut recourir à Css ou à JavaScript : Détecter le support des fonctionnalités avec @supports.

Cependant, CSS Feature Queries n'est pas supporté par tous les navigateurs, ainsi que le montre Can I Use : CSS Feature Queries.

@384400
384400 / arrays.js
Last active January 20, 2018 21:44
Déclarations et lectures de tableaux en JavaScript
/* Tableau unidimensionnel */
/** Declaration avec "push" **/
var regionsFrance = [];
regionsFrance.push('Nouvelle Aquitaine');
regionsFrance.push('Occitanie');
console.log(regionsFrance);
/** Declaration sans "push" (1) **/
var regionsFrance = new Array('Nouvelle Aquitaine', 'Occitanie');
@384400
384400 / -sizes.md
Created August 6, 2017 22:17
[Html] [JavaScript] [Css] Afficher les tailles, interlignes et marges dans un navigateur

Comment afficher les tailles, interlignes et marges dans un navigateur ?

En cours de développement d'une feuille de style, il est commode de voir directement, sans recourir à la console, les tailles, interlignes et marges des blocs de texte ou de tout autre élément.

Dans le même esprit, il est instructif de voir la feuille de style par défaut d'un navigateur.

Avec notre outil, il suffit d'insérer ses propres styles : lors de l'affichage dans un navigateur, la page indique sous forme de texte les valeurs calculées : le redimensionnement de la taille du navigateur recalcule à la volée les éléments.

Ce travail peut être étendu à l'infini en ajoutant de nouvelles détections.

@384400
384400 / -multilingual-content-with-only-css.md
Last active July 28, 2017 14:20
[Html] [JavaScript] [Css] {WordPress] Afficher le contenu d'une page en plusieurs langues grâce à une feuille de style

En identifiant la langue utilisée par le navigateur, il est fort simple d'afficher une page dans différentes langues grâce à Cascading Style Sheets (Css, c'est-dire les feuilles de style en cascade).

Cette solution utilise un code réduit en JavaScript.

En Php, côté serveur, nous aurions pu recourir à $_SERVER['HTTP_ACCEPT_LANGUAGE'] ou, mieux, à la fonction locale_accept_from_http et internationaliser nos chaînes de caractères avec la bibliothèque gettext mais ce travail est fastidieux.

Nota.

  • Il est déconseillé de représenter une langue avec un drapeau. Tous les francophones ne sont pas français, par exemple.
  • À l'usage, il nous paraît plus simple d'appeler les fonctions JavaScript directement dans le code Html, et cette pratique est validée par le W3C : la syntaxe est réduite et nous n'avons pas ainsi à nous occuper des gestionnaires d'évènements gérés différement selon les navigateurs.
  • L'identification de la langue en JavaS
@384400
384400 / event.js
Created June 23, 2017 17:03
addEventLister et removeEventListener
var addEvent = function(evt, handler) {
if (window.addEventListener) {
document.addEventListener(evt, handler, false);
} else if (window.attachEvent) {
document.attachEvent('on' + evt, handler);
}
};
var removeEvent = function(evt, handler) {
if (window.removeEventListener) {
document.removeEventListener(evt, handler, false);
@384400
384400 / align-horizontal.html
Last active December 24, 2016 18:53
Aligner horizontalement deux titres de tailles différentes
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Aligner horizontalement deux titres de tailles différentes</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="flex">
<div>