Aller au contenu

Easter egg4 min lecture

Comment afficher la météo locale avec fond adaptatif dans Webflow ?

Apprenez à afficher la météo locale du visiteur avec un fond qui s'adapte aux conditions météo dans Webflow.

Dans ce tutoriel, Sandro cofondateur de l'agence Webflow Gemeos vous montre comment afficher la météo locale du visiteur avec un fond qui s'adapte aux conditions météo dans Webflow.

Exemple

Autorisez la géolocalisation pour voir votre météo — ou simulez une condition

ConditionIcôneDégradé de fond
Ensoleillé☀️Or vers orange
Nuageux⛅Gris bleuté
Pluvieux🌧️Bleu profond
Neigeux❄️Bleu clair pâle
Orageux⛈️Anthracite sombre
Brumeux🌫️Gris clair

1. Créez le conteneur dans Webflow

Créez un Div avec l'ID weather-widget. Le script injecte le contenu et le style (fond dégradé, icône, température) automatiquement. Le Div peut être placé n'importe où dans votre page.

(function() {
  var el = document.getElementById('weather-widget');
  if (!el) return;

  var weatherConfig = {
    sunny:  { icon: '☀️', label: 'Ensoleillé',    bg: 'linear-gradient(135deg,#ffd700,#ff8c00)', color: '#111' },
    cloudy: { icon: '⛅', label: 'Nuageux',        bg: 'linear-gradient(135deg,#b0bec5,#78909c)', color: '#fff' },
    rainy:  { icon: '🌧️', label: 'Pluvieux',       bg: 'linear-gradient(135deg,#4169e1,#1e3a8a)', color: '#fff' },
    snowy:  { icon: '❄️', label: 'Neigeux',         bg: 'linear-gradient(135deg,#e3f2fd,#90caf9)', color: '#111' },
    stormy: { icon: '⛈️', label: 'Orageux',        bg: 'linear-gradient(135deg,#37474f,#1a1a2e)', color: '#fff' },
    foggy:  { icon: '🌫️', label: 'Brumeux',        bg: 'linear-gradient(135deg,#cfd8dc,#90a4ae)', color: '#111' },
  };

  function getCondition(code) {
    if (code === 0) return 'sunny';
    if (code <= 3) return 'cloudy';
    if (code <= 48) return 'foggy';
    if (code <= 67) return 'rainy';
    if (code <= 77) return 'snowy';
    return 'stormy';
  }

  function render(condition, temp, city) {
    var cfg = weatherConfig[condition] || weatherConfig.sunny;
    el.style.cssText = 'background:' + cfg.bg + ';border-radius:16px;padding:1.5rem;' +
      'display:flex;align-items:center;gap:1rem;transition:all 0.5s;';
    el.innerHTML = '<span style="font-size:40px;">' + cfg.icon + '</span>' +
      '<div><p style="font-size:20px;font-weight:500;color:' + cfg.color + ';margin:0;">' +
      temp + '°C — ' + cfg.label + '</p>' +
      '<p style="font-size:13px;color:' + cfg.color + ';opacity:0.7;margin:0;">' + (city || 'Votre position') + '</p></div>';
  }

  render('cloudy', '...', 'Localisation en cours...');

  if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(function(pos) {
      var lat = pos.coords.latitude, lon = pos.coords.longitude;
      fetch('https://api.open-meteo.com/v1/forecast?latitude=' + lat + '&longitude=' + lon + '&current_weather=true&timezone=auto')
        .then(function(r) { return r.json(); })
        .then(function(d) {
          var w = d.current_weather;
          render(getCondition(w.weathercode), Math.round(w.temperature), 'Votre position');
        });
    }, function() {
      render('sunny', '22', 'Dubaï (démo)');
    });
  } else {
    render('sunny', '22', 'Dubaï (démo)');
  }
})();

Conclusion

Un widget météo avec fond adaptatif crée une expérience contextualisée. Cas d'usage :

  • Pages d'accueil de sites lifestyle ou voyage
  • Applications SaaS avec personalisation contextuelle
  • Sites locaux qui veulent montrer leur ancrage territorial

Autorisez la géolocalisation pour voir votre météo

Publié le 20 mai 2026

Sandro DA SILVA

Growth Marketer, expert Webflow et touche à tout. Sandro s'occupe des opérations commerciale, veille au bon déroulement des projets et s’occupe des problématiques liées au marketing (SEO, Tracking, Copywriting, etc)

Vous allez notre collaboration, c’est garanti

Prêt à faire décoller votre activité ?

demander un devis

Let’s f*****G GO !!