Mois : avril 2019

[Javascript] Supprimer les entrées dupliquées d’un tableau clé/valeur

Source: Removing elements from an array of objects based on duplicate values of multiple keys

[jQuery] Vider des champs de formulaire de manière dynamique

Dans cet exemple, on vide tous les champs de formulaire enfant de l’élément qui a la classe .form-group.hidden

[jQuery] Des plugins pour gérer des actions conditionnelles (notamment afficher/masquer des champs de formulaire)

conditionize2.js

A flexible jQuery plugin for conditional actions (like showing and hiding elements, triggering events or whatever else you need) based on values of one or many fields. This is an improved version of conditionize.js jQuery plugin. Unlike the previous version, conditionize2.js is not restricted to only show and hide actions. But for simpler migration from conditionize.js to conditionize2.js, show/hide is the default behaviour.

A lot of EXAMPLES available here.

dependsOn

A jQuery plugin to facilitate the handling of form field dependencies. Demo.

[Change 3.6.x] Un modèle pour créer des formulaires spés

form.js

[jQuery] Vérifier si au moins une checkbox est cochée

Source: jQuery see if any or no checkboxes are selected

[jQuery] Cliquer sur une zone contenant un input type radio ou checkbox actionne le booléen

Ressources en ligne: Setting “checked” for a checkbox with jQuery?

ATTENTION: l’utilisation de $(this) dans la fonction pour récupérer l’élément cliqué empêche le clic sur l’élément <input type="checkbox" /> lui-même! On préférera utiliser event.target pour cibler l’élément cliqué.

Code non commenté


Code commenté

[HTML] Le positionnement d’un contenu ancré est décalé à l’écran par rapport à l’emplacement où est placé l’ancre dans le code source de la page.

Source: Anchor link landing in wrong position.

Code qui pose problème:

Suggestion de correction:

I think the problem is resulting from the anchors with no contents that you are using.

Also, it appears that name= has been deprecated in favor of id= as a fragment identifier in certain elements (including A) which makes a kind of sense as ID attributes are unique whereas NAME attributes are not so guaranteed.

I’d try sticking the fragment identifier in the actual renderable entity such as:

and see where that gets you. Incidentally, it looks like a good conference, I hope you get a comp admission.

Réponse de l’OP:

Aha! Got it, worked a charm, thanks mate. Incidentally – I’m one of the conference organiser, no web dev! So not only will I be at the conference, but also drinking whiskey with the speakers 🙂

[Vanilla JavaScript][jQuery] L’événement Click sur un élément parent, mais trouver l’élément enfant qui est cliqué avec event.target

Délégation d’événements avec event.target, event.target.closest si on écoute le clic sur un lien ou un bouton qui contient une icône SVG

Mise à jour: 09/12/2021

Nouvelle source avec deux solutions proposées (la 1ère fonctionne, je l’ai testée): Codepen: CodePen Home
Event delegation with SVGs and closest()
et Codepen: CodePen Home
Event Delegation with an SVG
.


Sources:

Description du problème

J’ai le markup HTML suivant:

…et je souhaite récupérer l’ID de l’élément enfant qui est cliqué lorsque je clique sur l’ensemble de la zone #p. Mais c’est systématiquement l’ID #p qui m’est remonté.

Solution en passant event en paramètre de fonction et en utilisant event.target pour récupérer les informations sur le noeud du DOM qui est effectivement cliqué

Note importante: ne pas tenter de passer this ou thisobj à la place de event en paramètre de la fonction. Le libellé du paramètre est important et doit rester event à cet endroit là. Plus d’info ici: Difference between this and event.target.

Cas plus complexe où la fonction est déclenchée via un attribut onClick dans la source HTML…

…et où une classe précise doit être mise à l’écart.

[AngularJS] Utiliser un filtre pour récupérer le nombre de clés contenues dans un objet JSON.

Source JS du filtre:

Utilisation qui en est faite dans le template:

Pour l’objet JSON lineData.details.config, numKeys me donne le nombre d’items présents dans l’objet.

[AngularJS] Utiliser ng-hide et $index pour gérer nativement un rowspan ou un colspan dans une boucle ng-repeat (dans un tableau HTML)

Pas tenté: mais peut probablement être utilisé également avec l’attribut HTML colspan.

Il suffit d’ajouter un attribut ng-hide="$index>0" sur l’ensemble des cellules du tableau qui contiennent l’attribut rowspan.
Source jsfiddle.net: AngularJS: ngRepeat & rowspan.