SCRIPTWEBFLOWJAVASCRIPTCSS

Bouton quantité personnalisé

Un sélecteur de quantité avec tes propres boutons, à la place des flèches natives du champ number, et le style que tu veux autour.

/ ÉTAPE 01

Copie-colle ce code entre les balises <head> de ta page

Ce style CSS supprime les flèches par défaut des champs de type "number" et les rend comme de simples zones de texte, pour un rendu plus uniforme et un contrôle total de la mise en forme.

bouton-quantite.css
<style>
  /* supprimer les styles de formulaire et définir la marge à 0 */
  input[type="number"]::-webkit-inner-spin-button,
  input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  input[type="number"] {
    -moz-appearance: textfield;
  }
</style>

/ ÉTAPE 02

Copie-colle ce code entre les balises <body> de ta page

Ce script attend que la page soit chargée, puis repère tous les blocs portant la classe .quantity-wrapper. Dans chaque bloc, il récupère le champ numérique .qty-input et les boutons .qty-plus et .qty-minus, puis déclenche un événement change à chaque clic.

bouton-quantite.html
<!-- JavaScript à placer dans un Embed en Footer (avant </body>) ou dans un fichier JS global -->
<script>
  document.addEventListener('DOMContentLoaded', function() {
    // Sélectionne tous les composants quantité
    document.querySelectorAll('.quantity-wrapper').forEach(function(wrapper) {
      const input = wrapper.querySelector('.qty-input');
      const btnPlus = wrapper.querySelector('.qty-plus');
      const btnMinus = wrapper.querySelector('.qty-minus');

      btnPlus.addEventListener('click', () => {
        let val = parseInt(input.value) || 0;
        input.value = val + 1;
        input.dispatchEvent(new Event('change'));
      });

      btnMinus.addEventListener('click', () => {
        let val = parseInt(input.value) || 0;
        if (val > parseInt(input.min || 1)) {
          input.value = val - 1;
          input.dispatchEvent(new Event('change'));
        }
      });
    });
  });
</script>

/ ÉTAPE 03

Structure ton bouton quantité et personnalise-le à ta guise

  1. 01Ajoute une div avec la classe "quantity-wrapper".
  2. 02Ajoute la classe "qty-input" sur le champ input de type "number".
  3. 03Ajoute la classe "qty-minus" sur l'élément qui soustrait 1 au champ.
  4. 04Ajoute la classe "qty-plus" sur l'élément qui ajoute 1 au champ.
Le bouton quantité en place sur une fiche produit

/ OÙ LE COLLER

DansWebflow, Paramètres › Custom code

CUSTOM CODE

PARAMÈTRES DU PROJET

Head code

<style> … </style>

Footer code

<script> … </script>

Les codes personnalisés ne s'appliquent qu'après publication.

Le style en Head, le script en Footer

Le CSS doit être lu avant l'affichage, le JavaScript après le contenu de la page.

Une seule fois pour tout le site

Les deux se posent au niveau du projet, pas page par page. Les blocs les trouvent tout seuls.

Publier pour activer

Tant que le site n'est pas publié, le code personnalisé ne tourne pas, même en aperçu.

/ LES OPTIONS

Tout se pilote par classe et par attribut.

.quantity-wrapper

classe

Le bloc qui contient le champ et les deux boutons.

.qty-input

classe

Le champ input de type "number" qui porte la quantité.

.qty-minus

classe

Le bouton qui retire 1, jusqu'au minimum du champ.

.qty-plus

classe

Le bouton qui ajoute 1.