CINXE.COM
Météo Marine - Previsions Marine gratuites à 15 jours - METEO CONSULT MARINE
<!DOCTYPE html> <html lang="fr" prefix="og: http://ogp.me/ns#"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> <!--[if IE]> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <![endif]--> <meta name="robots" content="index, follow"/> <title>Météo Marine - Previsions Marine gratuites à 15 jours - METEO CONSULT MARINE</title> <meta name="description" content="Météo Marine à 15 jours - Météo Marine à 15 jours ⛵ pour les Ports, les Zones Côtières, le Large, et les Plans d'eau en France, en Europe, et en Méditerranée ☼ - Toute l'Actualité et les Alertes Météo avec METEO CONSULT - L'assistance Météo en Direct - Prévisions Météo Marine gratuites et Abonnements Météo Marine" /> <link rel="canonical" href="https://marine.meteoconsult.fr/" /> <link rel="alternate" hreflang="fr" href="https://marine.meteoconsult.fr/"/> <link rel="alternate" hreflang="de" href="https://meereswetter.meteoconsult.com/"/> <link rel="alternate" hreflang="es" href="https://maritima.meteoconsult.es/"/> <link rel="alternate" hreflang="it" href="https://marittima.meteoconsult.it/"/> <link rel="alternate" hreflang="pt" href="https://maritima.meteoconsult.pt/"/> <link rel="alternate" hreflang="en" href="https://marine.meteoconsult.co.uk/"/> <meta property="og:title" content="Météo Marine - Previsions Marine gratuites à 15 jours - METEO CONSULT MARINE" /> <meta property="og:type" content="website" /> <meta property="og:url" content="https://marine.meteoconsult.fr/" /> <meta property="og:image" content="https://static5.mclcm.net/mc2020/int/logo_lcm_partage.jpg" /> <meta property="og:site_name" content="Météo Consult" /> <link rel="icon" type="image/png" sizes="16x16" href="https://static5.mclcm.net/mc2020/int/favicons/16_browser_favicon.png"/> <link rel="icon" type="image/png" sizes="32x32" href="https://static5.mclcm.net/mc2020/int/favicons/32_taskbar_shortcut_icon.png"/> <link rel="icon" type="image/png" sizes="96x96" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/96_desktop_shortcut_icon.png"/> <link rel="apple-touch-icon" sizes="120x120" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/120_iPhone_retina.png"/> <link rel="apple-touch-icon" sizes="152x152" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/152_iPad_retina.png"/> <link rel="apple-touch-icon" sizes="167x167" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/167_iPad_pro.png"/> <link rel="apple-touch-icon" sizes="180x180" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/180_iPhone_6_plus.png"/> <link rel="icon" type="image/png" sizes="128x128" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/128_chrome_webstore_icon.png"/> <link rel="icon" type="image/png" sizes="196x196" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/196_android_chrome_icon.png"/> <link rel="icon" type="image/png" sizes="228x228" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/228_opera_coast_icon.png"/> <link rel="icon" type="image/png" sizes="70x70" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/70_windows.png"/> <link rel="icon" type="image/png" sizes="270x270" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/270_windows.png"/> <link rel="icon" type="image/png" sizes="310x310" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/310_310_windows.png"/> <link rel="icon" type="image/png" sizes="310x150" href="https://static5.mclcm.net/mc2020/int/favicons/mcm/310_150_windows.png"/> <link rel="preconnect" href="https://static5.mclcm.net"> <link rel="preload" href="/image/int/svg/icons-v1.9.svg" as="image" type="image/svg+xml" /> <link rel="preload" href="/image/int/svg/icons-forecast-v1.7.svg" as="image" type="image/svg+xml" /> <link rel="stylesheet" href="/build/main_mcm.e5e7dbcc5a2e370376c0.css"> <link href="https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700,700i|Roboto:400,400i,500,700i,900,900i&display=swap" rel="stylesheet"> <link rel="stylesheet" href="/build/map_mcm.446af22937878ef6a119.css"> <link rel="stylesheet" href="/build/video.abd9ad68b5c5fdba53dc.css"> <link rel="stylesheet" href="/build/poi.c285985361ab096aef39.css"> <link rel="stylesheet" href="/build/news.a0c4b773b142bbec69e0.css"> <link rel="stylesheet" href="/build/mc_lcm_interactive_map.008bbe7878d1dab5e69f.css"> <link rel="stylesheet" href="/build/interactive_map.2262f19619f1f465b2b0.css"> <link rel="stylesheet" href="/build/map_v3_ui_mcm.6afc07a068920e353eca.css"> <style> .datapoint-thunder > div { width: 10px; height: 10px; border-radius: 50%; background-color: var(--thunder-color); box-shadow: 0 0 2px var(--thunder-color); animation: shrink 300ms ease-out; animation-delay: var(--thunder-d); } .datapoint-thunder > [data-m="m-0"] { --thunder-color:red; --thunder-d:300ms; } .datapoint-thunder > [data-m="m-5"] { --thunder-color:orange; --thunder-d:200ms; } .datapoint-thunder > [data-m="m-10"] { --thunder-color:yellow; --thunder-d:100ms; } @keyframes shrink { from { transform: scale(10); } to { transform: scale(1); } } </style> <script>function _log(options) { let {module, desc, type, data} = options; desc = desc || ''; type = type || 'info'; function getColor(c) { return `background: linear-gradient(${c}, #222);`; } let colorType = { success:{ str:'Success', bgc:getColor('#0a0') }, add: { str:'Adding', bgc:getColor('#0a0') }, load: { str:'Loaded', bgc:getColor('#0a0') }, info: { str:'Info', bgc:getColor('#00a') }, user: { str:'User', bgc:getColor('#a00') }, warning:{ str:'Warning !', bgc:getColor('#f70') }, deprecated:{ str:'Deprecated !',bgc:getColor('#fa0') }, error: { str:'Error !', bgc:'background: #f00;'} }; if(data) { console.log(`%c${module} %c${colorType[type].str}%c${desc}\t%o`, 'color:#00ff00; background: linear-gradient(#444, #222); padding-left: 4px; border-radius: 4px 0 0 4px', `color:#fff; ${colorType[type].bgc} padding:0 4px; border-radius: 0 4px 4px 0; margin-right:5px`, '', data ); } else { console.log(`%c${module} %c${colorType[type].str}%c${desc}`, 'color:#00ff00; background: linear-gradient(#444, #222); padding-left: 4px; border-radius: 4px 0 0 4px', `color:#fff; ${colorType[type].bgc} padding:0 4px; border-radius: 0 4px 4px 0; margin-right:5px`, "" ); } } const loadComponent = { _version:'1.0.0', _eventDispatched:{}, _key:'lcmc_', listen:function(str, cb, opt) { if(this._eventDispatched[str]) { cb(); } else { const options = opt||{ once:true }; document.addEventListener(this._key + str, cb, options); } }, dispatch:function(str) { this._eventDispatched[str] = true; _log({ module:'loadComponent', desc:`${str}`, type:'success' }); document.dispatchEvent(new Event(this._key + str)); } }; document.addEventListener("DOMContentLoaded", function () { loadComponent.dispatch('DOMContentLoaded'); });</script> <script src="/build/loadManager.e4de4aefdaed4d5d44f9.js"></script> <script src="/build/breakpoint.d888123e96f03ed75e3f.js"></script> <script src="/build/device.98136a570a033f3c971c.js"></script> <script src="/build/menu.8335c79bb050d8b6b45e.js" async></script> <script src="/build/cookie.f997018c4ea03fc7e364.js" class="loadmanager" data-priority="top" data-groups="rgpd" data-desc="load cookies"></script> <!-- MANDATORY: BEGIN IAB STUB --> <!-- MANDATORY: END IAB STUB --> <script src="https://cdn.appconsent.io/loader.js" defer async onload="loadComponent.dispatch('cmp');"></script> <script src="/build/prebidManager.f245fa29c24f8621ed23.js" defer></script> <script src="/build/visualViewport.e306052c934a4f3c0c09.js" defer></script> <script src="/build/AES.e871c47d679f26255d29.js" defer></script> <script src="/build/manager.0390e0ca308b8f8ebdac.js" defer></script> <script src="/build/historical.2c2ff4dd33a48cd98ec6.js" defer></script> <script src="/build/autocompleteGeneric.b6aee76117f4d290f83f.js" async></script> <script src="/build/popin.14ffe97951157dbda5ac.js" async></script> <script src="/build/bookmark.a2468b4b7714ba373f7c.js" async></script> <script src="/build/shortcut.3fd59dd63b54fe7ef12b.js" async></script> <script src="/build/smoothScroll.8b3a173373876b197b54.js" async></script> <script src="/build/returnTop.3a7c9bd8f4cab9340b9b.js" async></script> <script src="/build/restriction.25722c94781493548ac5.js" defer></script> <script src="/build/timetable.e8d66ef8e22cd22fa2c7.js" defer></script> <script src="/build/lazyload.b4e092163ca985453651.js" defer></script> <script src="/build/map.a75ef4b83317cb5c69b2.js" async></script> <script src="/build/ForecastMap.daff91ba4bebf83d2072.js" async></script> <script src="/build/dragNdrop.56f89fbf0f19fdd8b523.js" defer></script> <script> var dataLayer = [{ 'site':`METEO CONSULT Marine (meteoconsult.fr)`, 'environnement':`production`, 'support':'', 'websiteVersion':'', 'level1':`home`, 'level2':`marine`, 'level3':``, 'idType':``, 'idPays':``, 'namePays':``, 'idRegion':``, 'nameRegion':``, 'idDpt':``, 'nameDpt':``, 'idEntite':``, 'echeance':`J0`, 'siteLanguage':`fr`, 'userAgent':(function () { try { let val = (navigator.userAgent); return val.substring(0, 149); } catch (e) { return ''; } })(), 'userStatus':``, 'offer':``, 'kruxID':``, 'userID':``, 'adblocks':``, 'sessionType':``, 'orientation':``, 'idArticle':``, 'subscriptionContentType':`gratuit`, 'estAEC':``, 'estPhare':``, 'estBalise':``, 'estZen':``, 'displayModes':`` }]; var oneplusxInfos = { 'page_attr_pagecategory':`home`, 'page_attr_level1':`home`, 'page_attr_level2':`marine`, 'page_attr_level3':``, 'page_attr_tagname1':``, 'page_attr_tagname2':``, 'page_attr_tagname3':``, 'page_attr_articleid':``, 'page_attr_author':``, 'page_attr_pays':``, 'page_attr_region':``, 'page_attr_departement':``, 'page_attr_montant':``, 'page_attr_quantite':``, 'page_attr_subscriptioncontentstate':``, 'page_attr_subscriptioncontenttype':``, 'page_attr_userstatus':`inconnu`, 'page_attr_userstate':`non-connecte`, 'page_attr_subscription':``, 'page_attr_visitor_id':``, 'type':`default`, 'page_attr_url_path_1':``, 'page_attr_url_path_2':``, 'page_attr_url_path_3':``, 'page_attr_url_path_4':``, 'page_attr_page_title':``, 'page_attr_ctnt_qual':``, 'page_attr_domain':`meteoconsult.fr`, 'page_attr_full_domain':`marine.meteoconsult.fr`, 'page_attr_url_cleaned':`marine.meteoconsult.fr/`, 'page_attr_Seen-een':``, 'page_attr_sourcesite':`https://www.google.com/` }; loadComponent.listen('device', function () { try { let val = (getDeviceType()); dataLayer.push({'support': val.substring(0, 149)}); } catch (e) { console.log('DataLayer Error ['+e.message+']'); } }); loadComponent.listen('device', function () { try { let val = (getDeviceType()); dataLayer.push({'websiteVersion': val.substring(0, 149)}); } catch (e) { console.log('DataLayer Error ['+e.message+']'); } }); function loadGTM() { (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({'gtm.start': new Date().getTime(), event: 'gtm.js'}); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KCBHHMW'); } </script> <script class="loadmanager" data-priority="top" data-groups="viewport,rgpd" data-desc="audience - init GTM" data-run="initGTM"> window.initGTM = () => { loadGTM(); }; </script> <script>window.googletag = window.googletag || {cmd: []};</script> <script class="loadmanager" data-groups="rgpd" data-priority="top" data-run="wlsScript"> window.wlsScript = () => { window.wls = { options: { list: {id: "meteoconsult"}, stats: {trackingId: "UA-75588349-2"}, origin: { internalHostnames: [/(^|\.)meteoconsult\.fr$/] } } }; }; </script> <script class="loadmanager" data-priority="top" data-groups="rgpd" data-src="https://static-lists.linternaute.com/wls/wls.js"></script> <script> let CmpListenerId = -1; let cmpTriggerScroll = false; let cmpVendorGoogleAccepted = false; let cmpUserChoiceGiven = false; let cmpAllConsents = false; let cmpTcdataTcString = ''; let cmpTcdataGdprApplies = ''; const configSFBXAppConsent = { appKey: '450a2f2d-a5bc-4dbc-bce1-fa5430f98ae0', forceGDPRApplies: true, uuid: getCmpUuid(), //, debug:true callbacks: { init: ( error, state ) => { console.log('CMP : init', {error, state})}, listener: (tcData, success) => { checkCmp(tcData, success); }, show: err => { if(err) { console.log('CMP : error', err); } } } } function setCookieSession(name, value){ const domain = '.meteoconsult.fr'; const path = '/'; let data = value; if ((window.navigator.userAgent.indexOf("MSIE ") > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))) { data = encodeURIComponent(data); } const date = new Date(); date.setTime(date.getTime() + (364 * 864E5)); document.cookie = name + '=' + data + '; domain=' + domain + '; expires=' + date.toUTCString() + '; path=' + path; } function getCookieSession(name) { const oRegex = new RegExp('[; ]?' + name + '=([^;]*)'); let tmp; if ((window.navigator.userAgent.indexOf("MSIE ") > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))) { tmp = ((' ' + document.cookie).match(oRegex)) ? decodeURIComponent(RegExp["$1"]) : null; } else { tmp = ((' ' + document.cookie).match(oRegex)) ? RegExp["$1"] : null; } return tmp; } function getCmpUuid(){ let cmp_uuid = getCookieSession('cmp_v2_uuid'); if(cmp_uuid === null){ cmp_uuid = 'cmp'+ (new Date()).getTime() + Math.random(); setCookieSession('cmp_v2_uuid', cmp_uuid); } return cmp_uuid; } function checkCmp(tcData, success) { console.log('CMP : cmpTcdata', tcData); if(tcData === null) { return false; } cmpTcdataGdprApplies = tcData.gdprApplies; console.log('CMP : tcData.eventStatus', tcData.eventStatus); // eventStatus when CMP PopUp is prompted if (tcData.eventStatus === 'cmpuishown' ) { addGaCmp('init'); } // eventStatus when already accepted or when user gives it's choice if ((tcData.eventStatus === 'tcloaded' ) || (tcData.eventStatus === 'useractioncomplete')) { cmpUserChoiceGiven = true; if(success) { if (tcData.eventStatus === 'useractioncomplete') { addGaCmp2('popuphide', isAllCmpConsent(tcData)); } } populateCmpEventsIntoGTM(); updateCmpAllConsents(); if(!cmpAllConsents) { loadComponent.dispatch('cmpAllConsentsRejected'); } if(!cmpAllConsents && cmpTcdataGdprApplies) { loadComponent.listen('manager_user_loaded', () => { showRefusedCmpPopin(); }); } if (tcData.eventStatus === 'tcloaded' ) { addGaCmp('already'); removeCmpListener(tcData.listenerId, 'already accepted'); cmpAccepted(); } if (tcData.eventStatus === 'useractioncomplete' ) { // TODO change // User gives its choice (accept or deny) if(cmpAllConsents === true){ addGaCmp('accept'); cmpAccepted(); }else{ addGaCmp('deny'); } removeCmpListener(tcData.listenerId, 'user accepts'); } cmpTcdataTcString = tcData.tcString; //console.log('cmpTcdataTcString', cmpTcdataTcString); cmpVendorGoogleAccepted = google(tcData); } if(success){ if (tcData.eventStatus === 'cmpuishown' ) { addGaCmp2('popupshow'); } if ((tcData.eventStatus === 'tcloaded' ) || (tcData.eventStatus === 'useractioncomplete')) { addGaCmp2('checkchoice',getCmpConsentForGtm(tcData)); } } function google(tcData) { if(!tcData.vendor) { return false; } return !!tcData.vendor.consents[755]; } } function cmpAccepted() { loadComponent.dispatch('rgpd'); loadmanager.activateGroup('rgpd', true); } function populateCmpEventsIntoGTM() { __tcfapi('getTCData', 2, function (tcData, success) { if(success) { window.dataLayer.push({event: 'appconsent_ok'}); for(let c in tcData.purpose.consents) { if(tcData.purpose.consents[c]) { window.dataLayer.push({event: `appconsent_ctrl_${c}`}); } } } }); } function addGaCmp(scenario) { window.dataLayer = window.dataLayer || []; console.log("cmp addGaCmp : " + scenario); switch(scenario) { case 'init': window.dataLayer.push({'cmp_count':1, 'event':'cmp_call'}); break; case 'already': window.dataLayer.push({'cmp_status':1, 'event':'cmp_response'}); window.dataLayer[0].consent = 'oui'; break; case 'accept': window.dataLayer.push({'cmp_status':2, 'event':'cmp_response'}); window.dataLayer[0].consent = 'oui'; break; case 'deny': default: break; } } let postIncentive = false; function addGaCmp2(scenario, value = null) { window.dataLayer = window.dataLayer || []; console.log('CMP : addGaCmp2 scenario', scenario); switch(scenario) { case 'popupshow': if(postIncentive === false) { window.dataLayer.push({'event': 'uishown', 'uishown': 1}); console.log('CMP : dataLayer push uishown'); } break; case 'popuphide': if(postIncentive === false) { if (value) { console.log('CMP : dataLayer push consent_status accept'); window.dataLayer.push({'event': 'consent_status', 'consent_status':'accept'}); } else { console.log('CMP : dataLayer push consent_status deny'); window.dataLayer.push({'event': 'consent_status', 'consent_status':'deny'}); } }else{ if (value) { console.log('CMP : dataLayer push incentive_status accept_post_incentive'); window.dataLayer.push({'event': 'incentive_status', 'incentive_status':'accept_post_incentive'}); } else { console.log('CMP : dataLayer push incentive_status deny_post_incentive'); window.dataLayer.push({'event': 'incentive_status', 'incentive_status':'deny_post_incentive'}); } } break; case 'incentiveshow': console.log('CMP : dataLayer push show_incentive'); window.dataLayer.push({ 'event':'show_incentive', 'show_incentive':1}); postIncentive = true; break; case 'incentiveclick': console.log('CMP : dataLayer push click_incentive'); window.dataLayer.push({ 'event':'click_incentive', 'click_incentive':value}); break; case 'checkchoice': console.log('CMP : dataLayer push consent_choice'); window.dataLayer.push({ 'event':'consent_choice', 'consent_choice':value}); break; default: break; } } function isAllCmpConsent(tcData) { let allConsent = false; for (let c in tcData.purpose.consents) { if (c === '1') { allConsent = true; break; } } return allConsent; } function getCmpConsentForGtm(tcData) { let consent = ''; if(Object.keys(tcData.purpose.consents).length === 0){ consent = 'consent_out'; }else if(Object.keys(tcData.purpose.consents).length === 1){ consent = 'consent_mix'; }else { consent = 'consent_in'; for (let c in tcData.purpose.consents) { if (c === false) { consent = 'consent_mix'; break; } } } return consent; } function updateCmpAllConsents() { cmpAllConsents = false; __tcfapi('getTCData', 2, function (tcData, success) { if (success && tcData.purpose) { for (let c in tcData.purpose.consents) { if (c === '1') { cmpAllConsents = true; loadComponent.dispatch('cmpAllConsentsAccepted'); } } } }); console.log("cmpAllConsents", cmpAllConsents); } function removeCmpListener(id, origin) { if(id !== undefined) { __tcfapi('removeEventListener', 2, function() {}, id); } if(cmpTriggerScroll) { removeHandleScrollCmp(); } } function showCmpConfig() { __tcfapi('show', 2, function() {}, { jumpAt: 'privacy' }); } function handleScrollCmp() { return false; if(window.scrollY < 50) { return false; } cmpTriggerScroll = true; if(!cmpUserChoiceGiven) { acceptCmp(null); } } function removeHandleScrollCmp() { document.removeEventListener('scroll', handleScrollCmp); } function handleFocusCmpInput() { removeCmpListener(CmpListenerId, 'input'); return false; return acceptCmp(null); } function handleClickCmpA(e) { removeCmpListener(CmpListenerId, 'link'); return false; e.preventDefault(); return acceptCmp(this.getAttribute('href')); } function handleClickCmpBtn(e) { removeCmpListener(CmpListenerId, 'btn'); return false; e.preventDefault(); return acceptCmp(null); } function acceptCmp(url) { if(typeof __tcfapi === 'undefined'){ if(url !== null && url !== 'undefined') { window.location=url; } return false; } __tcfapi('accept', 2, error => { if(error) { console.log('%c CMP %c error [' + error + ']', 'background:grey;color:white;border-radius:5px;', 'color:black;'); } if (url !== null && url !== 'undefined') { window.location = url; } else { cmpTriggerScroll = true; checkCmp(); } }); return true; } function showRefusedCmpPopin() { console.log('showRefusedCmpPopin'); omit = [ 'services-meteo', 'weather-services', 'wetterdienste', 'servicios-tiempo', 'servizi-meteo', 'servicos-meteorologia', 'achats', 'purchases', 'compras', 'acquisti', 'einkaufe', 'services-marine', 'marine-services', 'wetterdienste', 'servicios-marino', 'servizi-marina', 'servicos-maritimo', 'login', 'forgot-password', 'reset-password', 'register', 'logout', //mc 'mon-compte', 'my-account', 'mi-cuenta', 'il-mio-account', 'a-minha-conta', 'mein-konto', 'info-meteo', 'weather-info', 'informacion-meteorologica', 'informazioni-meteo', 'informacao-meteorologica', 'wetterinfo' ]; urlFound = omit.some(x => { const regex = new RegExp(`.*\/${x}.*`); return regex.test(window.location.href); }, false); const profile = manager.getProfile(); const hasAbo = (profile !== null && profile.id !== 0 && profile.abo !== 0); if(urlFound || hasAbo) { return; } const popin = document.createDocumentFragment(); const popinBg = document.createElement('div'); popinBg.className = 'popinBackground'; popin.appendChild(popinBg); const popinContent = document.createElement('div'); popinContent.className = 'popin'; popinBg.appendChild(popinContent); const title = document.createElement('div'); title.className = 'title'; title.textContent = 'Naviguer\u0020sur\u0020le\u0020site\u0020METEO\u0020CONSULT'; popinContent.appendChild(title); const text1 = document.createElement('div'); text1.className = 'text'; text1.innerHTML = 'Vous\u0020avez\u0020choisi\u0020de\u0020refuser\u0020les\u0020cookies,\u0020notamment\u0020ceux\u0020concernant\u0020la\u0020publicit\u00E9\u0020personnalis\u00E9e\u0020et\u0020la\u0020mesure\u0020d\u0027audience.\n\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Cbr\u0020\/\u003E\u003Cbr\u0020\/\u003E\n\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020En\u0020l\u0027absence\u0020de\u0020revenus\u0020li\u00E9s\u0020\u00E0\u0020la\u0020publicit\u00E9,\u0020l\u0027acc\u00E8s\u0020au\u0020site\u0020se\u0020fait\u0020via\u0020abonnement.\n\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Cbr\u0020\/\u003E\u003Cbr\u0020\/\u003E\n\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020Deux\u0020choix\u0020s\u0027offrent\u0020donc\u0020\u00E0\u0020vous\u0020\u003A\u0020accepter\u0020les\u0020cookies\u0020pour\u0020acc\u00E9der\u0020au\u0020site\u0020gratuitement,\u0020ou\u0020bien\u0020vous\u0020abonner\u0020\u00E0\u0020nos\u0020services\u0020pour\u0020acc\u00E9der\u0020ainsi\u0020\u00E0\u0020un\u0020site\u0020sans\u0020publicit\u00E9\u0020et\u0020avec\u0020des\u0020contenus\u0020et\u0020services\u0020additionnels\u0020en\u0020fonction\u0020de\u0020l\u0027abonnement\u0020choisi.\n\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020'; popinContent.appendChild(text1); const btns = document.createElement('div'); btns.className = 'btns'; popinContent.appendChild(btns); const btnVip = document.createElement('div'); btnVip.className = 'bout3'; btnVip.textContent = 'Je\u0020m\u0027abonne'; btns.appendChild(btnVip); const btnCmp = document.createElement('div'); btnCmp.className = 'bout3'; btnCmp.textContent = 'J\u0027accepte\u0020les\u0020cookies'; btns.appendChild(btnCmp); const text2 = document.createElement('a'); text2.className = 'text'; text2.textContent = 'D\u00E9j\u00E0\u0020abonn\u00E9\u0020\u003F\u0020Je\u0020me\u0020connecte'; text2.href = 'https\u003A\/\/marine.meteoconsult.fr\/login?cb=' + encodeURIComponent(window.location.href); popinContent.appendChild(text2); btnCmp.addEventListener('click', () => { addGaCmp2('incentiveclick','accept'); popinBg.remove(); document.body.style.overflow = null; __tcfapi('accept', 2, () => { populateCmpEventsIntoGTM(); cmpAllConsents = true; loadComponent.dispatch('cmpAllConsentsAccepted'); loadComponent.dispatch('cnil'); cmpAccepted(); }, {force:true}); }); btnVip.addEventListener('click', () => { addGaCmp2('incentiveclick','subscribe'); window.location.href = 'https\u003A\/\/marine.meteoconsult.fr\/services\u002Dmarine\/nos\u002Doffres\u002Det\u002Dabonnements'; }); text2.addEventListener('click', () => { addGaCmp2('incentiveclick','login'); }); document.body.style.overflow = 'hidden'; document.body.appendChild(popin); addGaCmp2('incentiveshow'); } loadComponent.listen('DOMContentLoaded',() => { let cmp = document.querySelector('footer .configCmp'); if (!cmp) { return; } cmp.addEventListener('click', e => { e.preventDefault(); showCmpConfig(); }); }); </script> <script>loadComponent.listen('cmpAllConsentsAccepted', () => { ((s, t, a, y, twenty, two) => { s.Stay22 = s.Stay22 || {}; // Just fill out your configs here s.Stay22.params = { aid: "meteoconsult", excludes: ["vrbo", "booking", "expedia", "tripadvisor", "hotelscombined", "hotelscom"], deepStruct: [] }; // Leave this part as-is; twenty = t.createElement(a); two = t.getElementsByTagName(a)[0]; twenty.async = 1; twenty.src = y; two.parentNode.insertBefore(twenty, two); })(window, document, "script", "https://scripts.stay22.com/letmeallez.js"); }); </script> </head> <body> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KCBHHMW" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <header class="grid-container" id="header"> <div class="grid col-7 col-xs-8 col-s-10 col-l-7 col-xl-6 logo-title"> <a href="https://marine.meteoconsult.fr/"> <img class="" src="https://static5.mclcm.net/mc2020/int/logo/logo-lcmc.svg" alt="logo header" oncontextmenu="return false" onmousedown="return false"> </a> <div class="title mcm"> <a href="https://marine.meteoconsult.fr/" class="link-for_title"> <span class="first-title">meteo</span> <span class="second-title">marine</span> <div class="d-block d-l-block d-xl-block subtitle mcm"> <span class="first-subtitle">l'assistance</span> <span class="second-subtitle mcm">météo en direct</span> </div> </a> </div> </div> <div class="grid col-14 col-l-6 col-xl-7 d-none d-l-block d-xl-block" id="searchForm"> <form action="https://marine.meteoconsult.fr/recherche-previsions-meteo" method="get" autocomplete="off" id="genericSearchForm"> <input type="search" name="q" placeholder="Rechercher un port, un spot..." id="genericSearchQuery" class="search-input" required autocomplete="off"> <button type="submit" class="btn launch-search"> <svg class="icon icon-Magnifier " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#magnifier" /></svg> </button> </form> <div id="genericSearchResult"></div> </div> <button class="grid d-none col-2 d-l-none d-xl-none search-close" id="searchClose"> <svg class="icon icon-Close " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#close" /></svg> </button> <div class="grid col-9 col-xs-8 col-s-6 col-l-3 col-xl-3 fav-account_nav"> <button class="d-l-none d-xl-none btn magnifier" id="openSearch"> <svg class="icon icon-Magnifier " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#magnifier" /></svg> </button> <button class="btn user-fav_btn userFav" data-href="https://marine.meteoconsult.fr/mon-compte/favoris"> <svg class="icon icon-Star " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#star" /></svg> <span class="d-none d-l-block user-fav_label">Mes favoris</span> </button> <button class="btn user-account_btn auth-cta_btn userAccount" data-href="https://marine.meteoconsult.fr/login"> <svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg> <span class="d-none d-l-block user-account_label"> <span class="myAccount">Mon compte</span> <span class="toConnect">Se connecter</span> </span> <svg class="icon icon-Close " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#close" /></svg> </button> <button class="d-l-none d-xl-none btn open-nav" id="openNav"> <svg class="icon icon-Bars " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#bars" /></svg> <svg class="icon icon-Close " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#close" /></svg> </button> </div> <div class="grid col-16 detect-menu_mouseout"></div> <nav class="grid d-none col-l-16 col-xl-16 d-l-block d-xl-block" id="nav"> <div class="user-fav_label transparent-bloc logo-nav"> <a class="logo" href="https://marine.meteoconsult.fr/"> <img src="https://static5.mclcm.net/mc2020/int/logo/logo-lcmc.svg" alt="logo header" oncontextmenu="return false" onmousedown="return false" width="45" height="45"> </a> </div> <div class="nav-bloc"> <ul class="menu"> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/ports_spots_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/ports_spots_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-ports-et-spots" > <span class="menu-item_label">Ports & spots</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/ports_spots_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/ports_spots_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Ports & spots</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-abords-du-port"> Ports et marinas </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-mouillages"> Mouillages </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-lieux-de-peche"> Lieux de pêche </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-spots-de-glisse"> Spots de glisse </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-spots-de-plongee"> Spots de plongée </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-plages"> Plages </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-criques"> Criques </a> </li> </ul> </div> </div> </li> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/cotiere_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/cotiere_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-cotiere" > <span class="menu-item_label">Côtière</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/cotiere_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/cotiere_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Côtière</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-france-63/previsions-meteo-cotiere"> France </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-royaume-uni-149/previsions-meteo-cotiere"> Royaume-Uni </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-ecosse-100-149/previsions-meteo-cotiere"> Ecosse </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-irlande-86/previsions-meteo-cotiere"> Irlande </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-portugal-143/previsions-meteo-cotiere"> Portugal </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-espagne-56/previsions-meteo-cotiere"> Espagne </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-italie-89/previsions-meteo-cotiere"> Italie </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-grece-68/previsions-meteo-cotiere"> Grèce </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-croatie-47/previsions-meteo-cotiere"> Croatie </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-montenegro-198/previsions-meteo-cotiere"> Monténégro </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-turquie-185/previsions-meteo-cotiere"> Turquie </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-chypre-39/previsions-meteo-cotiere"> Chypre </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-tunisie-183/previsions-meteo-cotiere"> Tunisie </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-guadeloupe-916-63/previsions-meteo-cotiere"> Guadeloupe </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-martinique-1253-63/previsions-meteo-cotiere"> Martinique </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-cotiere"> Tous les pays </a> </li> </ul> </div> </div> </li> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/large_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/large_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-large" > <span class="menu-item_label">Large</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/large_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/large_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Large</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-acores-14/previsions-meteo-large"> Açores </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-antilles-19/previsions-meteo-large"> Antilles </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-madere-canaries-16/previsions-meteo-large"> Madères - Canaries </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-manche-golfe-de-gascogne-13/previsions-meteo-large"> Manche - Golfe de Gascogne </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-mediterranee-occidentale-17/previsions-meteo-large"> Méditerranée occidentale </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-mediterranee-orientale-18/previsions-meteo-large"> Méditerranée orientale </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-portugal-gibraltar-15/previsions-meteo-large"> Portugal - Gibraltar </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/navigation-mer-baltique-10/previsions-meteo-large"> Baltique </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-large"> Toutes les zones Large </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-grand-large"> Toutes les zones Grand Large </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/fichiers-grib"> Fichiers GRIB </a> </li> </ul> </div> </div> </li> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/carte_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/carte_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/carte-marine/vents" > <span class="menu-item_label">Carte Météo</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/carte_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/carte_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Carte Météo</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/avis-de-coup-de-vent"> Avis de coup de vent </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/carte-marine/frontologie"> Carte de frontologie </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/meteo-marine/semaphores"> Carte des sémaphores </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/carte-marine/vents"> Carte de vents </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/carte-marine/houle"> Carte de houle </a> </li> </ul> </div> </div> </li> <li class="menu-item tide item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/marees_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/marees_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/meteo-marine/horaires-des-marees/brest-4/mars-2025" > <span class="menu-item_label">Marées</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/marees_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/marees_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Marées</div> <div class="item-heading_border"></div> </div> <div class="tide-submenu_container"> <div class="tide-search_form"> <form action="https://marine.meteoconsult.fr/meteo-marine/recherche-horaires-marees" method="get" autocomplete="off" id="tideSearchForm"> <input type="search" name="q" placeholder="Chercher un lieu de marée" id="tideSearchQuery" class="search-input" required autocomplete="off"> <button type="submit" class="btn launch-search search-icon_container d-block"> <svg class="icon icon-Magnifier " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#magnifier" /></svg> </button> </form> <div id="tideSearchResult"></div> </div> <ul class="submenu tide item-closed"> <li class="submenu-item d-block d-xl-block"> <a href="https://marine.meteoconsult.fr/meteo-marine/horaires-des-marees/calais-53/mars-2025" class="news-item"> <span class="news-title">Calais</span> </a> </li> <li class="submenu-item d-block d-xl-block"> <a href="https://marine.meteoconsult.fr/meteo-marine/horaires-des-marees/brest-4/mars-2025" class="news-item"> <span class="news-title">Brest</span> </a> </li> <li class="submenu-item d-block d-xl-block"> <a href="https://marine.meteoconsult.fr/meteo-marine/horaires-des-marees/la-rochelle-ville-1027/mars-2025" class="news-item"> <span class="news-title">La Rochelle</span> </a> </li> <li class="submenu-item d-block d-xl-block"> <a href="https://marine.meteoconsult.fr/meteo-marine/horaires-des-marees/biarritz-1085/mars-2025" class="news-item"> <span class="news-title">Biarritz</span> </a> </li> </ul> <div class="find-tide_location"> <a href="https://marine.meteoconsult.fr/meteo-marine/annuaire-des-marees"> > Rechercher mon lieu de marées </a> </div> </div> </div> </div> </li> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/videos_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/videos_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/videos-marine/tous-nos-bulletins" > <span class="menu-item_label">Risque Météo</span> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/videos_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/videos_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Risque Météo</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/videos-marine/24-meteo-marine-mediterranee"> Météo marine Méditerranée </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/videos-marine/23-meteo-marine-atlantique"> Météo marine Atlantique </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/videos-marine/22-meteo-marine-manche"> Météo marine Manche </a> </li> </ul> </div> </div> </li> <li class="menu-item item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/terrestre_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/terrestre_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://www.meteoconsult.fr/" > <span class="menu-item_label">Terrestre</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/terrestre_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/terrestre_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Terrestre</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/carte-meteo/pays-63/previsions-meteo-france-aujourdhui"> Prévisions </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/carte-meteo/radar-de-pluie"> Carte Météo </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/carte-meteo/pays-63/previsions-meteo-montagne-france-aujourdhui"> Montagne </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/carte-meteo/pays-63/previsions-meteo-plage-france-aujourdhui"> Plage </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/actualites-meteo/dernieres-informations"> Actualités </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/videos-meteo/tous-nos-bulletins"> Risque Météo </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/services-meteo/nos-offres-et-abonnements"> Services </a> </li> <li class="submenu-item item-closed"> <a href="https://www.meteoconsult.fr/services-meteo/nos-offres-et-abonnements"> Pro </a> </li> </ul> </div> </div> </li> <li class="menu-item news external item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/actu_nautisme_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/actu_nautisme_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://figaronautisme.meteoconsult.fr/" target="_blank"> <svg class="icon icon-ExternalLink " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#external-link" /></svg> <span class="menu-item_label">Actu Nautisme</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/actu_nautisme_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/actu_nautisme_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Actu Nautisme</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item submenu-news_item d-block d-xl-block"> <a href="https://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76021.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" class="news-item"> <span class="news-hour">23/03</span> <span class="news-title">Oceanco : L'innovation au service des superyachts</span> </a> </li> <li class="submenu-item submenu-news_item d-block d-xl-block"> <a href="https://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76446.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" class="news-item"> <span class="news-hour">23/03</span> <span class="news-title">Le Grand Nord canadien en kayak de mer</span> </a> </li> <li class="submenu-item submenu-news_item d-block d-xl-block"> <a href="https://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-66134.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" class="news-item"> <span class="news-hour">23/03</span> <span class="news-title">Tout savoir sur le pilote automatique de cockpit</span> </a> </li> <li class="submenu-item submenu-news_item d-block d-xl-block"> <a href="https://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76444.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" class="news-item"> <span class="news-hour">23/03</span> <span class="news-title">Voguer sur la Loire, entre nature et patrimoine : une immersion unique au fil du fleuve royal</span> </a> </li> </ul> <div class="view-all_news d-none d-l-block"> <a href="https://figaronautisme.meteoconsult.fr" target="_blank">> Toutes les actualités</a> </div> </div> </div> </li> <li class="menu-item highlight item-closed"> <div class="submenu-background d-l-none"> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointxs" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/services_m_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/services_m_hd.jpg 2x" alt="image"/> </div> <div class="menu-item_bloc"> <a class="menu-item_btn" href="https://marine.meteoconsult.fr/services-marine/services" > <span class="menu-item_label">Services</span> </a> <i class="arrow"></i> </div> <div class="submenu-container d-l-none"> <div class="container-l container-xl submenu-inner_wrapper"> <div class="submenu-background d-none d-l-block"> <div class="img-wrapper"> <div class="gradient-bloc"></div> <img class="loadmanager" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII=" data-priority="top" data-groups="viewport, menuBackgroundBreakpointL" data-src="https://static5.mclcm.net/mc2020/int/menu/mcm/services_d_sd.jpg" data-srcset="https://static5.mclcm.net/mc2020/int/menu/mcm/services_d_hd.jpg 2x" alt="image"/> </div> </div> <div class="d-none d-l-block d-xl-block item-heading_container"> <div class="item-heading_label">Services</div> <div class="item-heading_border"></div> </div> <ul class="submenu"> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-zen"> Abonnement Zen </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-balise"> Abonnement Balise </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-traversee"> Abonnement Traversée </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-phare"> Abonnement Phare </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/briefing-marine"> Briefing Téléphonique </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/fichiers-grib"> Fichiers GRIB </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/alertes-meteo"> Alertes météo marine </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/bulletins-pro"> Bulletin Pro </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/prepaye-marine"> Prépayé Marine par téléphone </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/services-rapport-maritime"> Rapport Maritime </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/services-pro-marine"> Services Pro </a> </li> <li class="submenu-item "> <a href="https://marine.meteoconsult.fr/services-marine/configuration/devis-personnalise"> Devis personnalisé </a> </li> <li class="submenu-item BMCollection"> <a href="https://marine.meteoconsult.fr/services-marine/collection-bloc-marine"> <div class="iconContainer"><svg class="icon icon-StarBM " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#starBM" /></svg></div> Collection Bloc Marine </a> </li> </ul> </div> </div> </li> </ul> </div> <div class="account-nav"> <button class="btn user-fav_btn userFav" data-href="https://marine.meteoconsult.fr/mon-compte/favoris"><svg class="icon icon-Star " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#star" /></svg></button> <button class="btn user-account_btn auth-cta_btn userAccount" data-href="https://marine.meteoconsult.fr/login"><svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg></button> </div> </nav> <div id="user-account" class=""> <div class="transparent-bloc"></div> <div class="nav-bloc"> <div class="not-connected"> <div class="account-title"> <span><svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg></span> <span>MON COMPTE</span> </div> <div class="account-content"> <div>Accédez ici à vos services et aux détails de votre compte</div> <div><svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg></div> <div> <button class="login-btn auth-cta_btn" data-href="https://marine.meteoconsult.fr/login"> Me connecter </button> </div> </div> <div class="account-content-alt"> <div>Vous n'avez pas encore de compte ?</div> <div> <button class="btn-cta auth-cta_btn" data-href="https://marine.meteoconsult.fr/register"> créer un compte </button> </div> </div> </div> <div class="connected"> <div class="account-title"> <span><svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg></span> <span id="account-fullname"></span> </div> <div class="account-menu "> <button class="hm" data-href="https://marine.meteoconsult.fr/mon-compte/capitainerie/ma-capitainerie"> <svg class="icon icon-Slideshow " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#slideshow" /></svg> <span>ma capitainerie</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/favoris"> <svg class="icon icon-Star " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#star" /></svg> <span>mes favoris</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/meteomail"> <svg class="icon icon-Calendar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#calendar" /></svg> <span>mes mails quotidiens</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-alertes"> <svg class="icon icon-WarningCloud " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#warning-cloud" /></svg> <span>mes alertes</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/bulletins-pro"> <svg class="icon icon-Stats " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#stats" /></svg> <span>mes bulletins pro</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-releves-et-etudes"> <svg class="icon icon-Study " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#study" /></svg> <span>mes relevés et études</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-certificats-d-intemperie"> <svg class="icon icon-Certificat " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#certificat" /></svg> <span>mes certificats d'intempérie</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/consultations-briefings"> <svg class="icon icon-ExpertCall " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#expert-call" /></svg> <span>mes consultations et briefings</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/questions-par-mail"> <svg class="icon icon-Letter " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#letter" /></svg> <span>mes questions par mail</span> </button> <button class="btn-cta" data-href="https://marine.meteoconsult.fr/mon-compte/mon-compte-meteo">Accéder à mon compte</button> </div> <div class="account-menu border"> <button data-href="https://marine.meteoconsult.fr/mon-compte/profile"> <svg class="icon icon-Avatar " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#avatar" /></svg> <span>mon profil</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-abonnements"> <svg class="icon icon-SubscriberBadge " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#subscriber-badge" /></svg> <span>mes abonnements</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-moyens-de-paiement"> <svg class="icon icon-CreditCard " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#credit-card" /></svg> <span>mes moyens de paiements</span> </button> <button data-href="https://marine.meteoconsult.fr/mon-compte/mes-achats"> <svg class="icon icon-Buy " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#buy" /></svg> <span>mes achats</span> </button> </div> <div class="account-logout"> <button class="logout auth-cta_btn" data-href="https://marine.meteoconsult.fr/logout"> <svg class="icon icon-Exit " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#exit" /></svg> <span>Déconnexion</span> </button> </div> </div> </div> </div> </header> <div class="grid-container d-none" id="headerMargin"></div> <script>loadComponent.listen('McMenu', function(){ McMenu.load(); loadComponent.listen('DOMContentLoaded',function(){ McMenu.onDOMContentLoaded(); }); loadComponent.listen('user_connected',function () { document.getElementById('header').classList.add('connected'); McMenu.setUserProfile(manager.getProfile()); }) }); </script> <div id="ad-background-top" class="grid-container d-none d-xl-block" > <div class="grid col-16"> <div class="ad-background-container"> <div class="ad-background-content"> <div id="ad_arche"></div> </div> </div> </div> </div> <div id="intrusive"></div> <script> loadComponent.listen('ads', () => { readyDivGamTag('habillage', 'ad_arche'); }); </script> <div class="grid col-16 ad"> <div class="ad-border" id="ad_megabanner"></div> <script> loadComponent.listen('ads', () => { //uniquement pour breakpoint 'l', 'xl' readyDivGamTag('mban_atf', 'ad_megabanner'); }); </script> </div> <div class="grid-container container-xl"> <section class="grid col-16 col-xl-12"> <div class="mapPreview"> <h1>carte météo marine</h1> <div class="map-list"> <div id="interactive" class="grid col-16 col-xl-12 interactive " style="height: 100% !important;" > <div id="map-container-89338715" class="map-container hp-map"> <div id="map-ui"> <div id="map-loading" class="map-loading"></div> <div id="map-timeline" class="map-timeline hide"> <div id="container" class="timeline-container"></div> <div id="main-cursor" class="cursor main"> <div class="label"> <span class="text"></span> </div> </div> <div id="hover-cursor" class="cursor hover"> <div class="label"> <span class="text"></span> </div> </div> <button id="play-pause-button" class="play-pause-button"></button> </div> <div id="map-legends" class="map-legends"></div> <div id="controls-map" class="controls-map"> <button class="btn zoom-in"><svg class="icon icon-Plus " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#plus" /></svg></button> <button class="btn zoom-out"><svg class="icon icon-Less " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#less" /></svg></button> <button class="btn geoloc hide"><svg class="icon icon-Geolocation " aria-hidden="true"><use xlink:href="/image/int/svg/icons-location-v1.1.svg#geolocation" /></svg></button> <button class="btn redirect"><svg class="icon icon-Fullscreen " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#two-arrow-corner" /></svg></button> <button class="btn fullscreen hide"> <svg class="icon icon-Fullscreen " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#two-arrow-corner" /></svg> <svg class="icon icon-Reduce " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#two-arrow-center" /></svg> </button> </div> <button id="map-button-params" class="map-button button-params"></button> <button id="map-button-models" class="map-button button-models"></button> <div id="map-menu-params" class="map-menu"> <span class="menu-title">Paramétrage de la carte</span> <svg class="icon icon-Close " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#close" /></svg> <ul id="params-list" class="menu-list params-list"></ul> <div class="map-submenu"> <div class="submenu-title">Affichage</div> <div id="overlays-list" class="overlays-list"></div> </div> </div> <div id="map-menu-models" class="map-menu"> <span class="menu-title">Modèles</span> <svg class="icon icon-Close " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#close" /></svg> <ul id="multi-models-list" class="menu-list multiple-models-list hide"></ul> <ul id="models-list" class="menu-list models-list"></ul> <div id="model-details" class="model-details"></div> </div> <div class="map-logo"><svg class="icon icon-Logomcmplaceholder " aria-hidden="true"><use xlink:href="/image/int/svg/icons-location-v1.1.svg#logo-mcm-placeholder" /></svg></div> </div> </div> <template id="icons-template"> <div class="alias-Group1"><svg class="icon icon-AlertWind " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#alert-wind" /></svg></div> <div class="alias-Group2"><svg class="icon icon-HighTide " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#high-tide" /></svg></div> <div class="alias-Group3"><svg class="icon icon-SunWithRain " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#sun-with-rain" /></svg></div> <div class="alias-Group4"><svg class="icon icon-Thermometer " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#thermometer" /></svg></div> <div class="alias-Group5"><svg class="icon icon-Health " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#health" /></svg></div> <svg class="icon icon-FR " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#fr" /></svg> <svg class="icon icon-EN " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#en" /></svg> <svg class="icon icon-DE " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#de" /></svg> <svg class="icon icon-ES " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#es" /></svg> <svg class="icon icon-IT " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#it" /></svg> <svg class="icon icon-EU " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#eu" /></svg> <svg class="icon icon-US " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#us" /></svg> <svg class="icon icon-CA " aria-hidden="true"><use xlink:href="/image/int/svg/icons-flag-v1.1.svg#ca" /></svg> <img class="icon icon-MC" src="/bundles/meteoconsultwebmap/image/ModelIconMC.svg" alt=""> <svg class="icon icon-Particles " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#particles" /></svg> <svg class="icon icon-Arrows " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#arrows" /></svg> <svg class="icon icon-Barbs " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#barbs" /></svg> <svg class="icon icon-Isobars " aria-hidden="true"><use xlink:href="/image/int/svg/icons-forecast-v1.7.svg#isobars" /></svg> <div class="alias-Marker"></div> </template> <template id="parameter-group-template"> <li class="parameter-group"> <label class="group-label hover-js"> <span class="group-name"></span> <div class="line"></div> <div class="drop"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </div> </label> <ul class="group-param-list"></ul> </li> </template> <template id="parameter-item-template"> <li class="parameter-item hover-js"> <button class="btn-switch"><span class="switch-bullet"></span></button> <label class="param-name"></label> </li> </template> <template id="parameter-button-template"> <span class="param-name"></span> </template> <template id="overlay-item-template"> <button class="button-overlay hover-js"> <span class="overlay-name"></span> </button> </template> <template id="model-item-template"> <li class="model-item hover-js"> <button> <div class="model-item-firstline"> <span class="model-name"></span> </div> <span class="model-item-lastline">Source : <span class="model-source"></span></span> </button> </li> </template> <template id="multi-model-item-template"> <li class="model-item"> <div class="model-item-firstline"> <span class="model-name"></span> </div> </li> </template> <template id="model-button-template"> <ul class="model-button-list"> <li class="label"> <div class="model-name"></div> <ul class="model-desc"> <li>Maille : <span class="model-resolution"></span></li> <li>Run : <span class="model-last_run"></span></li> <li class="model-lasthours"></li> <li class="model-nexthours"></li> </ul> </li> </ul> </template> <template id="model-details-template"> <div>Source : <span class="model-source"></span></div> <div>Maille : <span class="model-resolution"></span></div> <div>Run : <span class="model-last_run"></span></div> <div class="model-lasthours"></div> <div class="model-nexthours"></div> </template> <template id="timeline-template"> <div class="timeline-background start"></div> <div class="primary-granularity"> <span class="primary-label"></span> <span class="primary-container"> <span class="secondary-granularity"> <span class="secondary-label"></span> </span> </span> <div class="disabled-dates"></div> </div> <div id="timeline-end" class="timeline-background end"></div> </template> <template id="legend-template"> <div class="map-legend"> <div class="label"> <span class="legend-text"></span> <span class="switchable unit-text"></span> </div> <div class="first"></div> <div class="colors"> <span class="unit-value-wrapper"><span class="unit-value"></span></span> </div> <div class="last"></div> </div> </template> <div class="model-run d-none d-l-block"> <div > <label class="TextDecoration">Source :</label> <label class="TextDecoration model-source"></label> </div> <div> <label class="TextDecoration">Maille :</label> <label class="TextDecoration model-maille"></label> </div> <div> <label class="TextDecoration">Run :</label> <label class="TextDecoration model-timerun"></label> </div> </div> </div> </div> </div> </section> <div class="grid col-4 d-none d-xl-block ad container_sticky row-4 mt-50"> <div class="item-sticky"> <div id="ad_atf_side" class="ad-border"></div> <script> loadComponent.listen('ads', () => { readyDivGamTag('pave_atf', 'ad_atf_side'); }); </script> </div> </div> <div class="grid col-16 col-xl-12"> <div class="videosHomeSection"> <section id="videosSection"> <div class="separator"></div> <div class="videosHeader" > <h1>Bulletins et animations</h1> </div> <div class="videosContainer scrollable d-l-none d-xl-none"> <div class="videosList"> <div class="videosListItem"> <a class="video-subscription" data-title="Bulletin des risques pour l'Atlantique" href="https://marine.meteoconsult.fr/videos-marine/23-bulletin-des-risques-pour-l-atlantique"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/23/542x305_100_300_000000x10x0.jpg?ts=20250323122810" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/23/1084x610_100_300_000000x10x0.jpg?ts=20250323122810 2x" alt="Bulletin des risques pour l'Atlantique"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Bulletin des risques pour l'Atlantique</div> </a> </div> <div class="videosListItem"> <a class="video-subscription" data-title="Bulletin des risques pour la Manche" href="https://marine.meteoconsult.fr/videos-marine/22-bulletin-des-risques-pour-la-manche"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/22/542x305_100_300_000000x10x0.jpg?ts=20250323122338" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/22/1084x610_100_300_000000x10x0.jpg?ts=20250323122338 2x" alt="Bulletin des risques pour la Manche"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Bulletin des risques pour la Manche</div> </a> </div> <div class="videosListItem"> <a class="video-subscription" data-title="Bulletin des risques pour la Méditerranée" href="https://marine.meteoconsult.fr/videos-marine/24-bulletin-des-risques-pour-la-mediterranee"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/24/542x305_100_300_000000x10x0.jpg?ts=20250323122922" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/24/1084x610_100_300_000000x10x0.jpg?ts=20250323122922 2x" alt="Bulletin des risques pour la Méditerranée"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Bulletin des risques pour la Méditerranée</div> </a> </div> <div class="videosListItem"> <a class="video-subscription" data-title="Animation Satellite Europe" href="https://marine.meteoconsult.fr/videos-marine/25-animation-satellite-europe"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/25/542x305_100_300_000000x10x0.jpg?ts=20250324052918" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/25/1084x610_100_300_000000x10x0.jpg?ts=20250324052918 2x" alt="Animation Satellite Europe"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Animation Satellite Europe</div> </a> </div> <div class="videosListItem"> <a class="video-subscription" data-title="Animation Satellite France" href="https://marine.meteoconsult.fr/videos-marine/26-animation-satellite-france"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/26/542x305_100_300_000000x10x0.jpg?ts=20250324052919" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/26/1084x610_100_300_000000x10x0.jpg?ts=20250324052919 2x" alt="Animation Satellite France"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Animation Satellite France</div> </a> </div> </div> </div> <div class="mainVideo d-l-block"> <a class="video-subscription" data-title="Bulletin des risques pour l'Atlantique" href="https://marine.meteoconsult.fr/videos-marine/23-bulletin-des-risques-pour-l-atlantique"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/23/542x305_100_300_000000x10x0.jpg?ts=20250323122810" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/23/1084x610_100_300_000000x10x0.jpg?ts=20250323122810 2x" alt="Bulletin des risques pour l'Atlantique"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle">Bulletin des risques pour l'Atlantique</div> </a> </div> <ul class="videosList videosListHome d-l-block" data-visible-item-start="0" data-visible-item-end="2"> <button class="btnSlider btnSliderTop d-none d-l-block"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> </button> <li class="videosListItem videosListItemMCM d-block"> <a class="video-subscription" data-title="Bulletin des risques pour la Manche" href="https://marine.meteoconsult.fr/videos-marine/22-bulletin-des-risques-pour-la-manche"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/22/542x305_100_300_000000x10x0.jpg?ts=20250323122338" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/22/1084x610_100_300_000000x10x0.jpg?ts=20250323122338 2x" alt="Bulletin des risques pour la Manche"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle"><span>Bulletin des risques pour la Manche</span></div> </a> <div class="separator"></div> </li> <li class="videosListItem videosListItemMCM d-block"> <a class="video-subscription" data-title="Bulletin des risques pour la Méditerranée" href="https://marine.meteoconsult.fr/videos-marine/24-bulletin-des-risques-pour-la-mediterranee"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/24/542x305_100_300_000000x10x0.jpg?ts=20250323122922" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/24/1084x610_100_300_000000x10x0.jpg?ts=20250323122922 2x" alt="Bulletin des risques pour la Méditerranée"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle"><span>Bulletin des risques pour la Méditerranée</span></div> </a> <div class="separator"></div> </li> <li class="videosListItem videosListItemMCM d-block"> <a class="video-subscription" data-title="Animation Satellite Europe" href="https://marine.meteoconsult.fr/videos-marine/25-animation-satellite-europe"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/25/542x305_100_300_000000x10x0.jpg?ts=20250324052918" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/25/1084x610_100_300_000000x10x0.jpg?ts=20250324052918 2x" alt="Animation Satellite Europe"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle"><span>Animation Satellite Europe</span></div> </a> <div class="separator"></div> </li> <li class="videosListItem videosListItemMCM d-block"> <a class="video-subscription" data-title="Animation Satellite France" href="https://marine.meteoconsult.fr/videos-marine/26-animation-satellite-france"> <div class="videoThumbnail"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/26/542x305_100_300_000000x10x0.jpg?ts=20250324052919" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/26/1084x610_100_300_000000x10x0.jpg?ts=20250324052919 2x" alt="Animation Satellite France"> <button class="play playMCM"> <svg class="icon icon-Play " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#play" /></svg> </button> </div> <div class="videoTitle"><span>Animation Satellite France</span></div> </a> </li> <button class="btnSlider btnSliderBottom d-none d-l-block"> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </button> </ul> </section> </div> </div> <div class="grid col-16 col-xl-12 ad"> <div id="ob_in-feed"></div> <script> loadComponent.listen('breakpoint', () => { if(["xxs","xs","s","m","l","xl"].indexOf(currentBreakpoint)!== -1) { const f = document.createDocumentFragment(); const a = document.createElement('aside'); f.append(a); const d = document.createElement('div'); d.className = 'ad sponso OUTBRAIN '; d.dataset.src = window.location.href; d.dataset.widgetId = 'SF_1'; a.append(d); document.getElementById('ob_in-feed').append(f); if(/outbrain/.test(new URLSearchParams(window.location.search).get('extra'))) { d.textContent = 'outbrain in-feed [SF_1]'; } } }); </script> </div> <div class="grid col-16"> <section id="newsSection" > <div class="separator"></div> <div class="newsHeader"> <h1>actualité nautisme</h1> </div> <div class="news-section-content"> <div class="mainNews"> <a href="http://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76021.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" > <div class="mainNewsCoverImage"> <img src="https://static1.mclcm.net/iod/images/v2/18/photo/429997/464x261_100_300_000000x10x0.jpg?ts=20250303122210" srcset="https://static1.mclcm.net/iod/images/v2/18/photo/429997/928x522_100_300_000000x10x0.jpg?ts=20250303122210 2x" alt="Oceanco : L'innovation au service des superyachts"> </div> <div class="mainNewsTitle"> <div class="timeNews"> <span class="time time-mcm">23/03 |</span> <strong>Yachting</strong> - Oceanco : L'innovation au service des superyachts </div> </div> </a> </div> <ul class="othersNews"> <a href="http://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76446.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" > <li class="otherNews d-block"> <div class="timeNews"> <svg class="icon icon-Hour " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#hour" /></svg> <span class="time time-mcm">23/03 |</span> <strong>Glisse</strong> </div> <div class="otherNewsTitle"> <span> Le Grand Nord canadien en kayak de mer </span> </div> </li> </a> <hr> <a href="http://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-66134.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" > <li class="otherNews d-block"> <div class="timeNews"> <svg class="icon icon-Hour " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#hour" /></svg> <span class="time time-mcm">23/03 |</span> <strong>Equipements</strong> </div> <div class="otherNewsTitle"> <span> Tout savoir sur le pilote automatique de cockpit </span> </div> </li> </a> <hr> <a href="http://figaronautisme.meteoconsult.fr/actualites-nautisme/redirect/article-76444.php?utm_source=meteoconsult&utm_medium=actualites&mctofignaut=1" target="_blank" > <li class="otherNews d-block"> <div class="timeNews"> <svg class="icon icon-Hour " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#hour" /></svg> <span class="time time-mcm">23/03 |</span> <strong>Carnet de voyage</strong> </div> <div class="otherNewsTitle"> <span> Voguer sur la Loire, entre nature et patrimoine : une immersion unique au fil du fleuve royal </span> </div> </li> </a> </ul> <div class="autopromo"> <a href="https://www.calameo.com/read/005655262ca4c34995ded" target="_blank"> <img src="https://static5.mclcm.net/mc2020/int/autopromo/HS-2024.jpg" alt=" Figaro Nautisme : Hors-Série"> </a> </div> </div> </section> </div> <div class="grid col-16 col-xl-12 "> <section id="poiSection"> <div class=" separator separatorMCM"></div> <div class="poiHeader poiHeaderMCM"> <h1> spots et zones</h1> </div> <ul class="poiList"> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-ports-et-spots"> <img src="https://static5.mclcm.net/mc2020/int/home/ports-mouillages.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/ports-mouillages@2x.jpg 2x" alt="poi.ports_and_anchorages"> <div class=" poiTitle"> <span> Ports et mouillages </span> </div> </a> </li> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-spots-de-glisse"> <img src="https://static5.mclcm.net/mc2020/int/home/spots-glisse.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/spots-glisse@2x.jpg 2x" alt="poi.boardsport_spot"> <div class=" poiTitle"> <span> Spots de glisse </span> </div> </a> </li> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-cotiere"> <img src="https://static5.mclcm.net/mc2020/int/home/cotiere.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/cotiere@2x.jpg 2x" alt="poi.coastal_areas"> <div class=" poiTitle"> <span> Zones côtières </span> </div> </a> </li> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-large"> <img src="https://static5.mclcm.net/mc2020/int/home/large.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/large@2x.jpg 2x" alt="poi.wide_areas"> <div class=" poiTitle"> <span> Zones large </span> </div> </a> </li> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-plages-et-criques"> <img src="https://static5.mclcm.net/mc2020/int/home/plage-crique.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/plage-crique@2x.jpg 2x" alt="poi.beaches_and_creeks"> <div class=" poiTitle"> <span> Plages et criques </span> </div> </a> </li> <li class="poiItem poiItemMCM"> <a href="https://marine.meteoconsult.fr/meteo-marine/previsions-meteo-spots-de-plongee"> <img src="https://static5.mclcm.net/mc2020/int/home/plongee.jpg" srcset="https://static5.mclcm.net/mc2020/int/home/plongee@2x.jpg 2x" alt="poi.diving_spot"> <div class=" poiTitle"> <span> Spots de plongée </span> </div> </a> </li> </ul> </section> </div> <div class="grid col-16 short-phone-number"> <span>* 3201 : numéro court de prévisions pour la France accessible depuis la France, hors DOM-TOM - 2,99€ par appel</span> <span>** 0899 70 12 34 : numéro de prévisions pour la France et le Monde accessible depuis la France, hors DOM-TOM - 2,99€ par appel</span> </div> </div> <section class="footer-section"> <footer class="grid-container container-xl"> <div class="grid col-16 col-m-8 col-xl-8 footer-title_grid"> <div class="footer-title_container"> <a href="https://marine.meteoconsult.fr/"> <img class="img-fluid footer-logo loadmanager" data-priority="low" data-groups="viewport" data-src="https://static5.mclcm.net/mc2020/int/logo/logo-lcmc.svg" alt="logo" oncontextmenu="return false" onmousedown="return false"> </a> <a href="https://marine.meteoconsult.fr/" class="link-for_title"> <div class="footerTitle" id="footerTitle"> <div class="title"> <span class="first-title">meteo</span> <span class="second-title">marine</span> </div> <div class="subtitle"> <span class="first-subtitle">l'assistance</span> <span class="second-subtitle {siteContext}">météo en direct</span> </div> </div> </a> </div> </div> <div class="grid col-16 col-m-8 col-xl-8 contact"> <div class="contact-container"> <div class="contact-label">Contactez le service client</div> <div class="contact-number"> <div class="phone-number"> <a href="tel:+33139281990">01 39 28 19 90</a> </div> <div class="phone-number_infos">Appel non surtaxé</div> </div> <div class="contact-icon"> <svg class="icon icon-ExpertCallFooter " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#expert-call-footer" /></svg> </div> </div> </div> <div class="grid col-16 bottom-hr"></div> <div class="grid col-16 col-m-8 start-l-2 col-l-3 start-xl-2 col-xl-3 footer-nav"> <div class="footer-item item-open"> <div class="item-heading " id="meteoconsult"> <div class="item-label"> meteo consult </div> <div class="arrow-icon_container"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </div> <div class="d-none d-m-block d-l-block d-xl-block item-label_border"></div> </div> <ul class="footer-subitem"> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/contact">Contactez-nous</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/nous-rejoindre">Nos offres d'emploi</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/enterprise">Tout savoir sur METEO CONSULT</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/le-modele-de-meteo-consult">Le modèle METEO CONSULT</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/cgv">CGV</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/cgu">CGU</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/mentions-legales">Mentions légales</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/infos-cookies">infos cookies</a> </li> <li class="subitem configCmp item-closed"> <a href="">Paramètres des cookies</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/info-marine/confidentialite">Confidentialité</a> </li> <li class="subitem "> <a onclick="javascript:__tcfapi('show', 2, function(){}, {})">Afficher le centre de confidentialité</a> </li> </ul> </div></div> <div class="grid col-16 col-m-8 start-l-6 col-l-3 start-xl-6 col-xl-3 footer-nav"> <div class="footer-item item-closed"> <div class="item-heading " id="ourServices"> <div class="item-label"> Nos services </div> <div class="arrow-icon_container"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </div> <div class="d-none d-m-block d-l-block d-xl-block item-label_border"></div> </div> <ul class="footer-subitem"> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-zen">Abonnement Zen</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-balise">Abonnement Balise</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-traversee">Abonnement Traversée</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-phare">Abonnement Phare</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/briefing-marine">Briefing avec un prévisionniste</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/bulletins-pro">Bulletin Pro Marine</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/services-pro-marine">Devis services PRO</a> </li> <li class="subitem item-closed"> <a href="https://www.meteoconsult.fr/">Météo Terrestre</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/services-marine/collection-bloc-marine">Collection Bloc Marine</a> </li> </ul> </div></div> <div class="grid col-16 col-m-8 start-l-10 col-l-3 start-xl-10 col-xl-3 footer-nav"> <div class="footer-item item-closed"> <div class="item-heading " id="legend"> <div class="item-label"> légendes </div> <div class="arrow-icon_container"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </div> <div class="d-none d-m-block d-l-block d-xl-block item-label_border"></div> </div> <ul class="footer-subitem"> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/legende-des-cartes">Légende des cartes</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/legende-des-pictogrammes">Légende des pictogrammes</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/glossaire">Glossaire</a> </li> </ul> </div> <div class="footer-item item-closed"> <div class="item-heading item-no-border " id="applications"> <div class="item-label"> applications </div> <div class="d-none d-m-block d-l-block d-xl-block item-label_border"></div> </div> <ul class="footer-subitem"> <li class="subitem"> <a href="https://marine.meteoconsult.fr/services-marine/application-marine">Application Météo Marine</a> </li> </ul> <div class="badge-container"> <a href="https://play.google.com/store/apps/details?id=com.lachainemeteo.marine.androidapp" target="_blank"> <img class="img-fluid badge-app" src="https://static5.mclcm.net/mc2020/fr/badge-googleplay-fr.svg" alt="badge google play fr"> </a> <a href="https://itunes.apple.com/fr/app/id444734837?mt=8" target="_blank"> <img class="img-fluid badge-app" src="https://static5.mclcm.net/mc2020/fr/badge-apple-store-fr.svg" alt="badge apple store fr"> </a> </div> </div></div> <div class="grid col-16 col-m-8 start-l-14 col-l-3 start-xl-14 col-xl-3 footer-nav"> <div class="footer-item item-closed"> <div class="item-heading " id="languages"> <div class="item-label"> langues <svg class="icon icon-WorldMap " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#world-map" /></svg> </div> <div class="arrow-icon_container"> <svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg> <svg class="icon icon-ChevronBottom " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-bottom" /></svg> </div> <div class="d-none d-m-block d-l-block d-xl-block item-label_border"></div> </div> <ul class="footer-subitem"> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.fr/">Français</a> </li> <li class="subitem item-closed"> <a href="https://marine.meteoconsult.co.uk/">Anglais</a> </li> <li class="subitem item-closed"> <a href="https://maritima.meteoconsult.es/">Espagnol</a> </li> <li class="subitem item-closed"> <a href="https://marittima.meteoconsult.it/">Italien</a> </li> <li class="subitem item-closed"> <a href="https://maritima.meteoconsult.pt/">Portugais</a> </li> <li class="subitem item-closed"> <a href="https://meereswetter.meteoconsult.com/">Allemand</a> </li> </ul> </div></div> <div class="grid col-16 copy-right"> Copyright METEO CONSULT © 2025 </div> </footer> </section> <section class="grid-container top-nav" id="top-nav"> <div class="grid col-14 col-xs-14 col-s-14 col-l-14 col-xl-14 item-list"> <div class="item"> <a href="https://www.lachainemeteo.com/meteo-france/previsions-meteo-france-aujourdhui" target="_blank">La Chaîne Météo</a> </div> <div class="item"> <a href="https://www.meteoconsult.fr/">METEO CONSULT</a> </div> <div class="item"> <a href="https://figaronautisme.meteoconsult.fr/" target="_blank">Figaro Nautisme</a> </div> <div class="item"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-zen">Abonnement Zen</a> </div> <div class="item"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-balise">Abonnement Balise</a> </div> <div class="item"> <a href="https://marine.meteoconsult.fr/services-marine/abonnement-phare">Abonnement Phare</a> </div> <div class="item"> <a href="https://marine.meteoconsult.fr/services-marine/briefing-marine">Briefing</a> </div> </div> <div class="grid col-2 d-none d-xl-block languages-list_wrapper"> <div class="default-label"> <svg class="icon icon-WorldMap " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#world-map" /></svg> <div class="label-select"> Français </div> <div class="select-arrow"></div> </div> <ul class="options"> <li class="lang-item"> <a href="https://marine.meteoconsult.co.uk/"> Anglais </a> </li> <li class="lang-item"> <a href="https://maritima.meteoconsult.es/"> Espagnol </a> </li> <li class="lang-item"> <a href="https://marittima.meteoconsult.it/"> Italien </a> </li> <li class="lang-item"> <a href="https://maritima.meteoconsult.pt/"> Portugais </a> </li> <li class="lang-item"> <a href="https://meereswetter.meteoconsult.com/"> Allemand </a> </li> </ul> </div> </section> <div style="display: none;" id="popup-welcome" data-title="Bienvenue sur le site METEO CONSULT" data-message=" Le site meteopro.fr est désormais fermé. Retrouvez sur le site METEO CONSULT les bulletins de prévisions ainsi que de toute une gamme de services adaptés à vos besoins. " data-home-label="Accueil" data-subscription-label="Découvrez les abonnements" data-home-link="https://marine.meteoconsult.fr/" data-subscription-link="https://marine.meteoconsult.fr/services-marine/nos-offres-et-abonnements"> </div> <div class="return-top d-xl-none hide"><button><svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg></button></div> <div class="return-top large d-none d-xl-block hide"><button><svg class="icon icon-ChevronTop " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#chevron-top" /></svg></button></div> <img src="/image/int/svg/icons-v1.9.svg" class="d-none"/> <img src="/image/int/svg/icons-forecast-v1.7.svg" class="d-none"/> <script> loadComponent.listen('autocompleteGeneric', function(){ autocompleteGeneric .setIcons({ 'historical' : '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DHistorical\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023historical\u0022\u0020\/\u003E\u003C\/svg\u003E', 'bookmark' : '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DStar\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023star\u0022\u0020\/\u003E\u003C\/svg\u003E' }) .setPopins({ changeContext: { title: "M\u00E9t\u00E9o\u0020terrestre", message: "Le\u0020lieu\u0020que\u0020vous\u0020avez\u0020choisi\u0020n\u0027est\u0020pas\u0020un\u0020lieu\u0020marine,\u0020vous\u0020allez\u0020donc\u0020\u00EAtre\u0020redirig\u00E9\u0020vers\u0020le\u0020site\u0020METEO\u0020CONSULT\u0020terrestre.\u003Cbr\u003E\u003Cbr\u003EPour\u0020des\u0020pr\u00E9visions\u0020m\u00E9t\u00E9o\u0020marine,\u0020nous\u0020vous\u0020invitons\u0020\u00E0\u0020choisir\u0020un\u0020autre\u0020lieu.", buttons: [ { 'label': "Je\u0020reste\u0020sur\u0020le\u0020site\u0020marine" }, { 'label': "J\u0027acc\u00E8de\u0020au\u0020site\u0020terrestre" } ], icon: '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DWarning\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023warning\u0022\u0020\/\u003E\u003C\/svg\u003E' } }) .setTexts({ moreBtn: 'Voir\u0020tous\u0020les\u0020r\u00E9sultats' }); }); loadComponent.listen('popin', function () { popin.setIcons({ 'check': '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DCheck\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023check\u0022\u0020\/\u003E\u003C\/svg\u003E', 'close': '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DClose\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023close\u0022\u0020\/\u003E\u003C\/svg\u003E' }).setFooter(`<div class="popin-copy-container"> <div class="img-container"> <img class="img-fluid" src="https://static5.mclcm.net/mc2020/int/logo/logo-mcm.svg"/> </div> <div> <div class="copy-title"> <span class="first-title">meteo</span> <span class="second-title">marine</span> </div> <div class="copy-subtitle"> <span class="first-subtitle">l'assistance</span> <span class="second-subtitle {siteContext}">météo en direct</span> </div> </div> </div>`). setLoginInfos({ 'url':`https\u003A\/\/marine.meteoconsult.fr\/login\u003Fcb\u003Dhttp\u003A\/\/marine.meteoconsult.fr\/`, 'title':`D\u00E9j\u00E0\u0020inscrit\u0020\u003F`, 'btn_label':`Connectez\u002Dvous` }). setRegisterInfos({ 'url':`https\u003A\/\/marine.meteoconsult.fr\/register`, 'title':`Pas\u0020encore\u0020inscrit\u0020\u003F`, 'btn_label':`Cr\u00E9er\u0020mon\u0020compte` }); }); loadComponent.listen('manager', function () { manager.setCookieDomain('.meteoconsult.fr') .setUrlInfo('https\u003A\/\/marine.meteoconsult.fr\/ajax\/user\u002Dinfos'); }); loadComponent.listen('bookmark', function () { bookmark.setCookieDomain('.meteoconsult.fr') .setUrlBookmarkList('https\u003A\/\/marine.meteoconsult.fr\/ajax\/my\u002Daccount\/list'); }); loadComponent.listen('shortcut', function () { shortcut .setIconClose(`\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DClose\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023close\u0022\u0020\/\u003E\u003C\/svg\u003E`) .setTextTitle(`mes\u0020favoris`) .setTextBtn(`modifier\u0020mes\u0020favoris`) .setLinkBtn(`https\u003A\/\/marine.meteoconsult.fr\/mon\u002Dcompte\/favoris`) .setContext('mcm') ; }); let cookieIsLoaded = false; loadComponent.listen('cookies', function (){ cookieIsLoaded = true; }); let cookieIsLoadedTimeout = setTimeout(function (){ console.log('After 3000'); if(cookieIsLoaded === false){ loadComponent.dispatch('cookiesNotAllowed'); } clearTimeout(cookieIsLoadedTimeout); },3000); loadComponent.listen('restriction', () => { window.restriction .setSubscriptions(` <div class="subscriptions-scroll"> <div class="subscriptions-list"> <ul> <li class="zen"> <button class="subscription" data-href="https://marine.meteoconsult.fr/services-marine/abonnement-zen#subscriptions-compare"> <svg class="icon icon-AboZen " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#zen-subscription" /></svg> <span>Abonnement</span> <span>Zen</span> <span>à partir de</span> <span>1.90 € TTC</span> <div class="btn-submit subscription-durations zen"> En savoir + </div> </button> </li> <li class="balise"> <button class="subscription" data-href="https://marine.meteoconsult.fr/services-marine/abonnement-balise#subscriptions-compare"> <svg class="icon icon-AboBalise " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#balise-subscription" /></svg> <span>Abonnement</span> <span>Balise</span> <span>à partir de</span> <span>5 € TTC</span> <div class="btn-submit subscription-durations balise"> En savoir + </div> </button> </li> <li class="crossing"> <button class="subscription" data-href="https://marine.meteoconsult.fr/services-marine/abonnement-traversee#subscriptions-compare"> <svg class="icon icon-AboCrossing " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#crossing-subscription" /></svg> <span>Abonnement</span> <span>Traversée</span> <span>à partir de</span> <span>12 € TTC</span> <div class="btn-submit subscription-durations crossing"> En savoir + </div> </button> </li> <li class="phare"> <button class="subscription" data-href="https://marine.meteoconsult.fr/services-marine/abonnement-phare#subscriptions-compare"> <svg class="icon icon-AboPhare " aria-hidden="true"><use xlink:href="/image/int/svg/icons-v1.9.svg#phare-subscription" /></svg> <span>Abonnement</span> <span>Phare</span> <span>à partir de</span> <span>22 € TTC</span> <div class="btn-submit subscription-durations phare"> En savoir + </div> </button> </li> </ul> </div> </div> <div class="highlight-zen"> <div class="popin-title">Accès Premium</div> <div class="popin-highlight-message"> <div>L'accès à ce service est réservé à nos abonnés, dès l'abonnement Zen.</div> <ul></ul> </div> <div class="popin-buttons"> <button class="btn button-4" data-href="https://marine.meteoconsult.fr/services-marine/abonnement-zen#subscriptions-list">Je m'abonne</button> </div> <div class="popin-highlight-price">A partir de 1€90/semaine</div> </div> `) .setPopinParams({ close: true, icon: '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DPadlock\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023padlock\u0022\u0020\/\u003E\u003C\/svg\u003E', title: "", buttons: [ { label: 'Retour' }, { label: 'Comparer\u0020les\u0020abonnements', callback: function () { window.location.href = "https\u003A\/\/marine.meteoconsult.fr\/services\u002Dmarine\/nos\u002Doffres\u002Det\u002Dabonnements?cb=" + window.location + "#subscriptions-compare" } } ], message: "" }) .setLoginUrl('https\u003A\/\/marine.meteoconsult.fr\/login', encodeURIComponent(window.location.href)) .run(); }); loadComponent.listen('rgpd',() => { const sOutbrain = document.createElement('script'); sOutbrain.src = 'https://widgets.outbrain.com/outbrain.js'; document.head.append(sOutbrain); }); </script> <script src="/build/tools.31d6cfe0d16ae931b73c.js" defer></script> <script defer src="/bundles/meteoconsultwebmap/plugin/leaflet.v1.7.1.min.js" onload="loadComponent.dispatch('leafletLoaded')"></script> <script defer src="/bundles/meteoconsultwebmap/plugin/d3js.v7.3.0.min.js" onload="loadComponent.dispatch('d3jsLoaded')"></script> <script src="/build/McLcmMap.v3.0.1.1dc84531c30820155a83.js" defer onload="loadComponent.dispatch(`McLcmMapLoaded`)"></script> <script src="/build/InteractiveMapUi.408a893547c7ee82cc6e.js" defer onload="loadComponent.dispatch(`InteractiveMapUiLoaded`)"></script> <script>window.ajaxLogUrl = 'https://marine.meteoconsult.fr/ajax/log';</script> <script src="/build/log_ajax.e4e8f2fc6b8cbc0ab16a.js" defer></script> <script src="/build/videosHome.dad51595037a1b7e6f27.js"></script> <script src="/build/gam_utils.43d63e96d1a3a90f0634.js" defer></script> <script> var IAS_PET_TIMEOUT = 700; var adserverRequestSent = false; var iasDataHandler; var __iasPET = __iasPET || {}; __iasPET.queue = __iasPET.queue || []; __iasPET.pubId = 925755; function runIas() { return new Promise((resolve, reject) => { console.log('[IAS] loading'); const s = document.createElement('script'); s.src = 'https://cdn.adsafeprotected.com/iasPET.1.js'; document.body.appendChild(s); s.onload = function() { console.log('[IAS] loaded, pushing'); __iasPET.queue.push({ adSlots: [{ adSlotId: '-', size: [1, 1], adUnitPath: '-', }], dataHandler: json => { try { const {brandSafety, custom, fr} = JSON.parse(json); const iasTargetings = { ...brandSafety, ...custom, fr, }; resolve(iasTargetings); } catch (e) { reject(e); } } }); }; }); } loadComponent.listen('ads', () => { runIas().then(iasTargetings => { console.log('[IAS] finished. targetings :', iasTargetings); for(k in iasTargetings) { setGamTargeting({key:k,value:iasTargetings[k]}); } prebidManager.serviceLoaded('ias'); loadComponent.dispatch('ias'); }).catch(e => { console.log('[IAS] PROBLEME', e); }); }); </script> <script class="loadmanager" data-priority="top" data-groups="rgpd" data-desc="hubvisor - src" data-src="//cdn.hubvisor.io/wrapper/01BYK28ENND8X5G8K0AJ2DPK9E/hubvisor-lcm.js"></script> <script> window.Hubvisor = window.Hubvisor || {}; window.Hubvisor.cmd = window.Hubvisor.cmd || []; function runHubvisor() { console.log('[hubvisor] loading'); window.Hubvisor.cmd.push(() => { setInvCodes(); window.Hubvisor('register-bids-handler', placements => { console.log('[hubvisor] Returned placements :', placements); placements.forEach(({placementId, targetings}) => { console.log('[hubvisor] Setting targetings for placement ' + placementId + ' with keywords : ', JSON.stringify(targetings)); if(Object.entries(targetings).length) { prepareNewKeywords(placementId, JSON.parse(JSON.stringify(targetings))); } }); if(prebidManager._loaded) { addAllNewKeywords('gam').then(() => { refreshGamTagsToRefresh(); }); } else { prebidManager.serviceLoaded('hubvisor'); } }); }); } function removeHubvisorKeywords(placementId, targetings, delay) { console.warn('[hubvisor] removeHubvisorKeywords deprecated'); return false setTimeout(function() { for(var key in targetings) { targetings[key] = null; } prepareNewKeywords(placementId, targetings); addAllNewKeywords('gam'); }, delay); } function refreshHubvisor(tag) { setInvCodes(tag); Hubvisor('refresh', tag); } function setInvCodes(tag) { const invCodes = []; if(!tag) { for(let t in gamSlots) { invCodes.push({invcode:gamSlots[t].invCode, targeting: globalTargeting}); } } else { invCodes.push({invcode:gamSlots[tag].invCode, targeting: globalTargeting}); } console.log('[hubvisor] extra:set-invcodes', invCodes); window.Hubvisor.cmd.push(() => { Hubvisor('extra:set-invcodes', invCodes); }); } loadComponent.listen('ias', runHubvisor, {once:false}); var hbvVideoinit = false; var hbvVideoCalled = false; var hbvVideoBids = []; var hbvVideoCalledSecu = null; function callHbvVideoBids() { if(hbvVideoinit) { return; } hbvVideoinit = true; console.time('HUBVISOR instream'); console.log('[hubvisor] call instream'); window.Hubvisor.cmd.push(() => { Hubvisor('instream:on-bids-ready', bids => { if(hbvVideoCalled) { return; } hbvVideoCalled = true; hbvVideoBids = bids.players; console.log('[hubvisor] instream bids', bids.players); loadComponent.dispatch('hubvisor_stopWaitForBids'); console.timeEnd('HUBVISOR instream'); clearTimeout(hbvVideoCalledSecu); }); }); } function securityDispatchHbv(timer) { hbvVideoCalledSecu = setTimeout(() => { loadComponent.dispatch('hubvisor_stopWaitForBids'); console.log('[hubvisor] instream security dispatch without Bids'); }, timer); } function getHbvVideoBids(playerName) { console.log('[hubvisor] get instream bids', playerName); var bids; hbvVideoBids.forEach(playerInfo => { if(playerInfo.playerId === playerName) { bids = playerInfo; } }); return bids; } </script> <script src="/js/plugin/prebid3.27.0.min.js"></script> <script async src="//securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> const apnAvailableTags = {}; apnAvailableTags.xxs = {}; apnAvailableTags.xxs.habillage = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_special', invCode:'smartphone_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,3]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xxs.mban_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_mban_atf', invCode:'smartphone_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[300,50],[300,100],[320,50],[320,100]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xxs.pave_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_pave_atf', invCode:'smartphone_meteoconsult_marine-accueil_pave_atf', sizes:[300,250], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xs = {}; apnAvailableTags.xs.habillage = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_special', invCode:'smartphone_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,3]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xs.mban_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_mban_atf', invCode:'smartphone_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[300,50],[300,100],[320,50],[320,100]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xs.pave_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_pave_atf', invCode:'smartphone_meteoconsult_marine-accueil_pave_atf', sizes:[300,250], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.s = {}; apnAvailableTags.s.habillage = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_special', invCode:'smartphone_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,3]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.s.mban_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_mban_atf', invCode:'smartphone_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[300,50],[300,100],[320,50],[320,100]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.s.pave_atf = { tag:'/31695825/meteoconsult/webmobile_smartphone_nos/smartphone_meteoconsult_marine-accueil_pave_atf', invCode:'smartphone_meteoconsult_marine-accueil_pave_atf', sizes:[300,250], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.m = {}; apnAvailableTags.m.habillage = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_special', invCode:'tablette_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,4]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.m.mban_atf = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_mban_atf', invCode:'tablette_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[5,5],[728,90]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.m.pave_atf = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_pave_atf', invCode:'tablette_meteoconsult_marine-accueil_pave_atf', sizes:[[300,250],[300,600]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.l = {}; apnAvailableTags.l.habillage = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_special', invCode:'tablette_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,4]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.l.mban_atf = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_mban_atf', invCode:'tablette_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[5,5],[728,90],[970,250]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.l.pave_atf = { tag:'/31695825/meteoconsult/webmobile_tablette_nos/tablette_meteoconsult_marine-accueil_pave_atf', invCode:'tablette_meteoconsult_marine-accueil_pave_atf', sizes:[[300,250],[300,600]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xl = {}; apnAvailableTags.xl.habillage = { tag:'/31695825/meteoconsult/web_desktop_nos/desktop_meteoconsult_marine-accueil_special', invCode:'desktop_meteoconsult_marine-accueil_special', sizes:[[2,1],[2,2],[1800,1000]], isAtf:true, refreshActive:false, refreshDelay:0, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xl.mban_atf = { tag:'/31695825/meteoconsult/web_desktop_nos/desktop_meteoconsult_marine-accueil_mban_atf', invCode:'desktop_meteoconsult_marine-accueil_mban_atf', sizes:[[1,1],[5,5],[728,90],[970,250],[1000,90],[1000,200],[1000,250],[1000,260],[1000,300]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; apnAvailableTags.xl.pave_atf = { tag:'/31695825/meteoconsult/web_desktop_nos/desktop_meteoconsult_marine-accueil_pave_atf', invCode:'desktop_meteoconsult_marine-accueil_pave_atf', sizes:[[300,250],[300,600]], isAtf:true, refreshActive:true, refreshDelay:20, refreshCurrent:0, refreshVisible:0, target:null, slot:null, targeting:[], debugInfos:{} }; let gamSlots; let apiRegieCalled = false; let atfsLoaded = 0; let globalTargeting = {}; window.googletag = window.googletag || {cmd: []}; window.regieApi = { triggerRule(key, value) { if (apiRegieCalled) { return; } apiRegieCalled = true; console.log(`GAM : regieApi.triggerRule key:${key}, value:${value}`); if (key === 'exclu' && value === 'yes') { setGamTargeting({key, value}); stopRefreshSlots('all'); } else if (key === 'inread') { setGamTargeting({exclu: 'inread', inread: value}); stopRefreshSlots('all'); } else if (key === 'couplagesimple') { stopRefreshSlots('atf'); } callAllBtf(); }, setupHabillage(e) { console.log('GAM : callback setupHabillage', e); createHabillage(e); }, setupCoverGAM(e) { createCover(e); stopRefreshSlots('all'); } }; let isWindowFocus = true; window.addEventListener('focus', () => { isWindowFocus = true; }); window.addEventListener('blur', () => { isWindowFocus = false; }); function getGamSlotsFromCurrentBreakpoint(tags, bp) { bp = bp||currentBreakpoint; return tags[bp]; } function prepareGam() { gamSlots = getGamSlotsFromCurrentBreakpoint(apnAvailableTags); loadComponent.dispatch('ads'); } function initGam() { setGamTargeting({key: 'lg', value: '-fr-'}); googletag.cmd.push(function () { googletag.pubads().enableSingleRequest(); googletag.enableServices(); const testmode = new URLSearchParams(window.location.search).get('mode'); if (testmode !== null) { testingMode(testmode); } googletag.pubads().addEventListener('slotRenderEnded', event => { console.log('GAM : event slotRenderEnded', event.slot.getSlotElementId(), event); for (const t of Object.keys(gamSlots)) { if (gamSlots[t].target === event.slot.getSlotElementId()) { gamSlots[t].debugInfos = event; break; } } if(!apiRegieCalled) { atfsLoaded++; console.log(`GAM : ATFs loaded : ${atfsLoaded} (${event.slot.getSlotElementId()})`); if(atfsLoaded === 3) { callAllBtf(); } } let hasSize = false; if (event.size !== null) { hasSize = true; if (event.size[0] === 1 && event.size[1] === 1) { hasSize = false; } else if (event.size[0] === 5 && event.size[1] === 5) { hasSize = false; } } if(!hasSize) { try { document.getElementById(event.slot.getSlotElementId()).classList.remove('ad-border'); } catch (e) {} } if(event.slot.getSlotElementId() === 'ad_megabanner' || event.slot.getSlotElementId() === 'ad_arche '){ document.dispatchEvent(new Event('gam.slotRenderEnded')); } }); for (const t of Object.keys(gamSlots)) { if (gamSlots[t].isAtf) { displayGamTag(gamSlots[t].slot); break; } } }); } function testingMode(key) { console.log('GAM : testing mode :', [key]); setGamTargeting({key: 'mode', value: [key]}); } function setGamTargeting(data, tag) { console.log('GAM : set targeting', data, tag||'global'); if(tag) { try { gamSlots[tag].slot.setTargeting(data.key, data.value); } catch (e) { try { gamSlots[tag].targeting.push(data); } catch (e) { console.warn('GAM : %o not found', tag); } } } else { googletag.cmd.push(() => { googletag.pubads().setTargeting(data.key, data.value); }); globalTargeting[data.key] = data.value; } } function readyDivGamTag(tag, target) { if (gamSlots === undefined || !gamSlots.hasOwnProperty(tag) || !gamSlots[tag]) { return false; } console.log('GAM : readyDivGamTag', tag, target); gamSlots[tag].target = target; let isTargetAtfsReady = true; let isTargetBtfsReady = true; for(let t in gamSlots) { if(gamSlots[t].isAtf && gamSlots[t].target === null) { isTargetAtfsReady = false; } if(!gamSlots[t].isAtf && gamSlots[t].target === null) { isTargetBtfsReady = false; } } if(isTargetAtfsReady) { loadComponent.listen('DOMContentLoaded', () => { loadComponent.dispatch('gamTargetAtfsReady'); }); } if(isTargetBtfsReady) { loadComponent.dispatch('gamTargetBtfsReady'); } } function loadTags() { console.group('GAM : loadTags()'); for(let t in gamSlots) { slot = gamSlots[t]; if(slot.isAtf && !slot.slot) { console.log('GAM : define google tag', slot.target); slot.slot = googletag.defineSlot(slot.tag, slot.sizes, slot.target).addService(googletag.pubads()); while(gamSlots[t].targeting.length) { gamSlots[t].slot.setTargeting(gamSlots[t].targeting[0].key, gamSlots[t].targeting[0].value); gamSlots[t].targeting.shift(); } } } console.groupEnd(); } function displayGamTag(tag) { console.log('GAM : display tag', tag); googletag.display(tag); } const slotsToRefresh = []; function refreshGamTagsToRefresh() { while(slotsToRefresh.length) { const t = slotsToRefresh[0]; console.log('GAM : refreshing', t); displayGamTag(gamSlots[t].slot); slotsToRefresh.splice(0, 1); } } function callAllBtf() { console.log('GAM : call all btfs'); for(let t in gamSlots) { slot = gamSlots[t]; if(!slot.isAtf && !slot.slot) { var s = document.createElement('script'); s.className = 'loadmanager'; s.innerHTML = 'console.log("GAM : define google tag' + slot.target + '");'; s.innerHTML += 'defineBtf(document.currentScript.getAttribute("gamtag"));'; s.dataset.priority = 'top'; s.dataset.groups = 'viewport,rgpd'; s.dataset.desc = `[GAM] ${t}`; s.setAttribute('gamtag', t); document.getElementById(slot.target).parentNode.appendChild(s); loadmanager.add(s); } } } function defineBtf(t) { console.log('GAM : defineBtf', t); gamSlots[t].slot = googletag.defineSlot(gamSlots[t].tag, gamSlots[t].sizes, gamSlots[t].target).addService(googletag.pubads()); while(gamSlots[t].targeting.length) { gamSlots[t].slot.setTargeting(gamSlots[t].targeting[0].key, gamSlots[t].targeting[0].value); gamSlots[t].targeting.shift(); } for (const t of Object.keys(gamSlots)) { if (!gamSlots[t].isAtf) { displayGamTag(gamSlots[t].slot); break; } } } function createHabillage(infos) { if(infos.vOffset > 0) { const div = document.getElementById('ad_arche'); div.style.backgroundImage = `url("` + infos.mediaUrl + `")`; div.style.height = `${infos.mediaHeight}px`; div.addEventListener('click', e => { window.open(infos.clickUrl); }); document.getElementById('intrusive').style.marginTop = `${infos.vOffset}px`; div.querySelector('iframe').style.pointerEvents = 'none'; } } function createCover(infos) { if(infos.clickUrl) { const header = document.querySelector('body > header'); let expandTimeout, canExpandTimeout = null; let canExpand, closed, isHovering = false; const delayBeforeExpand = 500; let autoReduce = null; const divCover = document.createElement('div'); let img10 = infos.mediaMobile10; let img30 = infos.mediaMobile30; let imgReveal = infos.mediaPortrait; if(currentBreakpoint === 'm') { img10 = infos.mediaMobile10; img30 = infos.mediaMobile30; imgReveal = infos.mediaPortrait; } if(currentBreakpoint === 'l') { img10 = infos.mediaTablet10; img30 = infos.mediaTablet30; imgReveal = infos.mediaPaysage; } if(currentBreakpoint === 'xl') { img10 = infos.mediaDesktop10; img30 = infos.mediaDesktop30; imgReveal = infos.mediaPaysage; } divCover.id = 'cover'; divCover.style.backgroundImage = `url("` + img30 + `")`; if(window.getDeviceType() === 'desktop') { divCover.addEventListener('click', clicked); } else { divCover.addEventListener('touchend', clicked); } header.parentNode.insertBefore(divCover, header); updateHeaderHeight(); pushMainPage(); const nextImg10 = new Image(); nextImg10.src = img10; const nextImgReveal = new Image(); nextImgReveal.src = imgReveal; divCover.addEventListener('mouseenter', () => { isHovering = true; clearTimeout(canExpandTimeout); canExpandTimeout = null; canExpandTimeout = setTimeout(() => { canExpand = true; if(isHovering) { expand(); } }, delayBeforeExpand); }); divCover.addEventListener('mouseout', () => { isHovering = false; canExpand = false; clearTimeout(expandTimeout); expandTimeout = null; clearTimeout(canExpandTimeout); canExpandTimeout = null; }); divCover.addEventListener('mousemove', () => { isHovering = true; if(canExpand) { clearTimeout(expandTimeout); expandTimeout = null; expandTimeout = setTimeout(() => { expand(); }, delayBeforeExpand); } resetAutoReduce(); }); document.addEventListener('scroll', reduce); let close = document.createElement('div'); close.className = 'close'; close.textContent = 'X'; divCover.appendChild(close); close.addEventListener('click', e => { closed = true; reduce(); e.stopPropagation(); return false; }); close.addEventListener('touchend', e => { closed = true; reduce(); e.stopPropagation(); return false; }); close.addEventListener('mouseenter', () => { if(!closed) { expand(); } }); updateHeaderHeight(); function clicked() { if(isHoverEnable()) { window.open(infos.clickUrl); reduce(); } else { if(this.classList.contains('expand') || closed) { window.open(infos.clickUrl); reduce(); } else { expand(); } } resetAutoReduce(); } function updateHeaderHeight() { // header.style.top = `${Math.floor(divCover.getBoundingClientRect().height)}px`; // window.requestAnimationFrame(updateHeaderHeight); } function pushMainPage() { // if(['l', 'xl'].indexOf(currentBreakpoint) !== -1) { // document.getElementById('top-nav').style.top = '10vh'; // header.style.marginTop = 0; // } // document.body.style.paddingTop = `calc(10vh + ${document.getElementById('top-nav').getBoundingClientRect().height}px)`; document.body.classList.add('ads-cover'); } function resetAutoReduce() { clearTimeout(autoReduce); autoReduce = null; autoReduce = setTimeout(() => { reduce(); }, 5E3); } function expand(delay=0) { if(!closed) { setTimeout(()=> { divCover.classList.add('expand'); divCover.classList.remove('reduce'); divCover.style.backgroundImage = `url("` + imgReveal + `")`; document.body.classList.add('ads-cover-expand'); document.body.classList.remove('ads-cover-reduce'); document.body.classList.remove('ads-cover'); }, delay); } } function reduce() { clearTimeout(expandTimeout); expandTimeout = null; clearTimeout(canExpandTimeout); canExpandTimeout = null; canExpand = false; isHovering = false; divCover.classList.remove('expand'); divCover.classList.add('reduce'); divCover.style.backgroundImage = `url("` + img10 + `")`; document.body.classList.remove('ads-cover-expand'); document.body.classList.add('ads-cover-reduce'); document.body.classList.remove('ads-cover'); } } } function checkVisibleAds() { if(!isWindowFocus) { return false; } const headerHeight = document.getElementById('header').getBoundingClientRect().height; for(let t in gamSlots) { if(gamSlots[t].slot && gamSlots[t].refreshActive) { const elem = document.getElementById(gamSlots[t].target); const top = Math.max(elem.getBoundingClientRect().top, headerHeight); const bot = Math.min(elem.getBoundingClientRect().top + elem.getBoundingClientRect().height, Math.max(document.documentElement.clientHeight, window.innerHeight || 0)); if((bot - top) > (elem.getBoundingClientRect().height/2)) { gamSlots[t].refreshVisible += 10; } if(Math.floor(gamSlots[t].refreshVisible / 100) >= gamSlots[t].refreshDelay) { refreshSlot(t); } } } } function stopRefreshSlots(slots) { console.log('GAM : stopRefreshSlots', slots); for(let t in gamSlots) { if(slots === 'all' || (slots === 'atf' && gamSlots[t].isAtf)) { gamSlots[t].refreshActive = false; } } } function refreshSlot(t) { console.log('GAM : refreshSlot', t); gamSlots[t].refreshVisible = 0; gamSlots[t].refreshCurrent++; googletag.destroySlots([gamSlots[t].slot]); if(!/_r(\d)$/g.test(gamSlots[t].invCode)) { gamSlots[t].invCode += '_r1'; } else { gamSlots[t].invCode = gamSlots[t].invCode.replace(/_r(\d)$/g, `_r${Math.min(gamSlots[t].refreshCurrent, 5)}`); } if(!/_r(\d)$/g.test(gamSlots[t].tag)) { gamSlots[t].tag += '_r1'; } else { gamSlots[t].tag = gamSlots[t].tag.replace(/_r(\d)$/g, `_r${Math.min(gamSlots[t].refreshCurrent, 5)}`); } gamSlots[t].slot = googletag.defineSlot(gamSlots[t].tag, gamSlots[t].sizes, gamSlots[t].target).addService(googletag.pubads()); console.log('GAM : ', gamSlots[t].target, 'refresh :', gamSlots[t].tag); slotsToRefresh.push(t); refreshHubvisor(t); } setInterval(checkVisibleAds, 100); loadComponent.listen('rgpd', () => { loadComponent.listen('gamTargetAtfsReady', () => { loadComponent.listen('prebidLoaded', () => { googletag.cmd.push(loadTags); initGam(); }); }); }); loadComponent.listen('DOMContentLoaded', prepareGam); document.addEventListener('breakpointChange', () => { prepareGam(); }); </script> <script>const preferedUnitCookieName = 'unitMCM'; const changeUnitPossible = { speed:[ 'KilometerHour', 'Knot', 'MeterSecond', 'MileHour', 'Beaufort', ], tempe:[ 'Celsius', 'Fahrenheit' ] }; const changeUnitConversionTab = { 'kmh':'KilometerHour', 'kt':'Knot', 'ms':'MeterSecond', 'mph':'MileHour', 'bft':'Beaufort', 'celsius':'Celsius', 'fahrenheit':'Fahrenheit' }; </script> <script>loadComponent.listen('DOMContentLoaded', function () { let videos = document.getElementsByClassName("video-subscription"); for(let i = 0; i < videos.length; i++) { videos[i].addEventListener('click', function (evt) { evt.preventDefault(); evt.stopPropagation(); loadComponent.listen('restriction_ready', () => { if (!window.restriction.isGranted(window.restriction.ROLE_ZEN)) { window.restriction.showPopin( window.restriction.ROLE_ZEN, this.dataset.title, 'Acc\u00E9dez\u0020aux\u0020animations\u0020satellite,\u0020\u00E9chos\u0020radar\u0020et\u0020bulletins\u0020vid\u00E9o\u0020pr\u00E9sent\u00E9s\u0020par\u0020un\u0020pr\u00E9visionniste,\u0020inclus\u0020d\u00E8s\u0020l\u2019abonnement\u0020Zen.', this.href ); return; } if (evt.ctrlKey) { window.open(this.href, '_blank'); } else { window.location = this.href; } }); }); } }); </script> <script> loadComponent.listen('DOMContentLoaded', () => { document.querySelector("#controls-map .redirect").addEventListener('click', (e) => { e.stopImmediatePropagation(); window.location.href = 'https://marine.meteoconsult.fr/carte-marine/vents'; }); if (document.querySelector("#switch-map") !== null) { document.querySelector("#switch-map").addEventListener('click', () => { document.getElementById('interactive').classList.toggle('hidden'); document.getElementById('forecast-map').classList.toggle('hidden'); }); } }); loadComponent.listen('leafletLoaded', () => { loadComponent.listen('d3jsLoaded', () => { loadComponent.listen('McLcmMapLoaded', () => { loadComponent.listen('InteractiveMapUiLoaded', () => { let interactiveMapConfiguration = {...JSON.parse(`{"url":{"parameters":"https:\/\/ws.meteoconsult.fr\/meteoconsultmarine\/web\/100\/fr\/v30\/interactivemap\/parameters","legends":"https:\/\/ws.meteoconsult.fr\/meteoconsultmarine\/web\/100\/fr\/v30\/interactivemap\/legends"},"localeCountry":"fr-FR","overlaysAutoload":["particles","arrows","barbs"],"disableOverlaysOnPlaying":["isobars"],"mapEngine":{"lat":45.2,"lon":2.29,"zoom":4,"minZoom":3,"maxZoom":13,"publisher":"meteoconsultmarine","env":"prod"},"default":{"parameters":[{"paramId":4,"modelId":"monde_ens__mc"}],"overlayId":null,"startDate":null}}`), ...{ textParams: { changeModelChronologic: `Le\u0020mod\u00E8le\u0020s\u00E9lectionn\u00E9\u0020n\u0027est\u0020pas\u0020disponible\u0020pour\u0020cette\u0020\u00E9ch\u00E9ance.\u003Cbr\u003ENous\u0020basculons\u0020la\u0020carte\u0020sur\u0020le\u0020mod\u00E8le\u0020\u007BMODEL_NAME\u007D`, changeModelGeographical: `Le\u0020mod\u00E8le\u0020s\u00E9lectionn\u00E9\u0020n\u0027est\u0020pas\u0020disponible\u0020g\u00E9ographiquement.\u003Cbr\u003ENous\u0020vous\u0020basculons\u0020sur\u0020le\u0020mod\u00E8le\u0020\u007BMODEL_NAME\u007D`, lastHours: `Derni\u00E8re\u0020mise\u0020\u00E0\u0020jour\u0020il\u0020y\u0020a\u0020\u007BLAST_HOUR\u007D`, nextHours: `Prochaine\u0020mise\u0020\u00E0\u0020jour\u0020dans\u0020\u007BNEXT_HOUR\u007D`, nextHoursImminentUpdate: `Prochaine\u0020mise\u0020\u00E0\u0020jour\u0020imminente`, lastHoursLight: `Actualis\u00E9,\u0020il\u0020y\u0020a\u0020\u007BLAST_HOUR\u007D`, nextHoursLight: `Mise\u0020\u00E0\u0020jour\u0020dans\u0020\u007BNEXT_HOUR\u007D`, nextHoursImminentUpdateLight: `Mise\u0020\u00E0\u0020jour\u0020imminente` } }}; window.InteractiveMapUi = new window.InteractiveMapUiService(interactiveMapConfiguration); window.InteractiveMapUi.run().then(() => { loadComponent.dispatch('InteractiveMapUiReady') }); }); }); }); }); const mapConvertUnit = { 'm': 'Meter', 'ft': 'Feet', 'km/h': 'KilometerHour', 'nd': 'Knot', 'm/s': 'MeterSecond', 'mph': 'MileHour', 'Bft': 'Beaufort', '°C': 'Celsius', '°F': 'Fahrenheit' }; loadComponent.listen('InteractiveMapUiReady', () => { let units = []; if (window.Cookies.get(preferedUnitCookieName)) { units = Object.values(window.Cookies.get(preferedUnitCookieName)).map(value => { return Object.keys(mapConvertUnit).find(key => mapConvertUnit[key] === changeUnitConversionTab[value]); }).filter(Boolean); } window.InteractiveMapUi.getCollection().forEach(map => { map.setPreferredUnit(units); loadComponent.listen('manager_user_loaded', () => { const geoloc = window.manager.getGeoloc(); map.setGeoloc({lat: geoloc.lat, lon: geoloc.lon}); }); }); }); loadComponent.listen('DOMContentLoaded', () => { document.querySelectorAll('.map-container').forEach(map => { map.addEventListener('InteractiveMapUi.changeUnit', ({detail}) => { if (!detail.unit_name) { return; } const cookie = window.Cookies.get(preferedUnitCookieName); let type; Object.entries(changeUnitPossible).forEach(([key, value]) => { if (value.includes(mapConvertUnit[detail.unit_name])) { type = key; } }); if (cookie && type) { cookie[type] = Object.keys(changeUnitConversionTab).find(key => changeUnitConversionTab[key] === mapConvertUnit[detail.unit_name]); console.log('set prefered unit', cookie[type]); window.Cookies.set({'name': preferedUnitCookieName, 'value': cookie, 'days': 365}); } }); map.addEventListener('InteractiveMapUi.openPopin', ({detail}) => { loadComponent.listen('popin', () => { window.popin.create({ close: true, class: 'popin-mapv3', message: detail.message, buttons: [], icon: '\u003Csvg\u0020class\u003D\u0022icon\u0020icon\u002DWarning\u0020\u0022\u0020aria\u002Dhidden\u003D\u0022true\u0022\u003E\u003Cuse\u0020xlink\u003Ahref\u003D\u0022\/image\/int\/svg\/icons\u002Dv1.9.svg\u0023warning\u0022\u0020\/\u003E\u003C\/svg\u003E' }); }); }); map.addEventListener('InteractiveMapUi.error', ({detail}) => { loadComponent.listen('log_ajaxLoaded', () => { try { // @ts-ignore window.logAjax.log({ url: window.location.href, module: 'MapUi', data: JSON.stringify(detail), ua: navigator.userAgent }); console.log('ajaxLog sended', detail); } catch (e) { console.error('probleme while logging to ajax'); } }); }); }); }); loadComponent.listen('InteractiveMapUiReady', () => { let init = JSON.parse(`{"url":{"parameters":"https:\/\/ws.meteoconsult.fr\/meteoconsultmarine\/web\/100\/fr\/v30\/interactivemap\/parameters","legends":"https:\/\/ws.meteoconsult.fr\/meteoconsultmarine\/web\/100\/fr\/v30\/interactivemap\/legends"},"localeCountry":"fr-FR","overlaysAutoload":["particles","arrows","barbs"],"disableOverlaysOnPlaying":["isobars"],"mapEngine":{"lat":45.2,"lon":2.29,"zoom":4,"minZoom":3,"maxZoom":13,"publisher":"meteoconsultmarine","env":"prod"},"default":{"parameters":[{"paramId":4,"modelId":"monde_ens__mc"}],"overlayId":null,"startDate":null}}`); window.InteractiveMapUi.getCollection().forEach(map => { init.default.parameters.forEach((p) => { map.setParam(map.findParamater(p.paramId)); map.setModel(map.findModel(p.paramId, p.modelId)); }); if (init.default.overlayId) { map.setOverlay(map.findOverlay(parseInt(init.default.overlayId))); } else { let defaultParams = map.findParamater(init.default.parameters[0].paramId); let defaultOverlay = defaultParams.overlays !== null && defaultParams.overlays.length ? map.findOverlay(defaultParams.overlays[0]) : null; if (defaultOverlay && init.overlaysAutoload.includes(defaultOverlay.param)) { map.setOverlay(defaultOverlay); } } map.display(); const modelDetails = map.getModelDetails(`yyyyy/MM/dd hhTU`)[0]; document.querySelector('#interactive .model-run .model-source').innerText = modelDetails.source; document.querySelector('#interactive .model-run .model-maille').innerText = modelDetails.resolution; document.querySelector('#interactive .model-run .model-timerun').innerText = modelDetails.lastRun; }); }); </script> <script>loadComponent.listen('DOMContentLoaded', function () { let list = document.getElementsByClassName('a-href'); for (let item of list) { if (item.dataset.href) { item.addEventListener('click', function (e) { if (e.ctrlKey) { window.open(this.dataset.href, '_blank'); } else { window.location = this.dataset.href; } }); } } });</script> <script> window.mc = {}; let onePlusX_cmp_accepted = false; function isAllCmpConsent(tcData) { let allConsent = false; for (let c in tcData.purpose.consents) { if (c === '1') { allConsent = true; break; } } return allConsent; } (() => { /** * Require tcfapi * * * */ class OnePlusX { _getCustomAttributes() { return oneplusxInfos || {}; } _addCustomAttributes(k, v) { if(oneplusxInfos === undefined) { return; } oneplusxInfos[k] = v; console.log('onePlusX', [`custParam`,k, v]); if(v !== '') { googletag.cmd.push(() => { googletag.pubads().setTargeting(k, v); }); } } constructor() { // old url this._urlProfile = 'https://profiles.tagger.opecloud.com/api/v1/lefigaro/profile'; this._urlSync = "https://tagger.opecloud.com/lefigaro/v2/uid"; this._seatId = 'lefigaro'; (function(o,n,e,p,l,u,s){o[l]=o[l]||function(){(o[l].q=o[l].q||[]).push(arguments);}; u=n.createElement(e);u.async=1;u.src=p;s=n.getElementsByTagName(e)[0];s.parentNode.insertBefore(u,s); }(window,document,"script",`https://cdn.opecloud.com/ope-${this._seatId}.js`,"ope")); } syncUid(enable){ console.log('onePlusX', [`syncUid`,enable]); if (enable) { console.log('onePlusX', `Sync UID with GAM started`); // TODO fetch var xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", this._urlSync, true); xmlHttp.withCredentials = true; xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState === 4) { if (xmlHttp.status === 200) { const response = JSON.parse(xmlHttp.responseText); setTimeout(() => { window.mc.onePlusX._addCustomAttributes('1plusx_uid0', response["part-0"]); window.mc.onePlusX._addCustomAttributes('1plusx_uid1', response["part-1"]); }, 500); } else { console.warn('onePlusX', `OnePlusX-Uid request problem state ${xmlHttp.readyState} & status ${xmlHttp.status}`); } loadComponent.dispatch('onePlusX_ID'); } }; xmlHttp.send(''); } } profile(){ ope(this._seatId, 'onProfile', (error, data) => { if (error || typeof data !== 'object' || data === null) { console.warn('onePlusX', `Failed to load profile: ${error}`); return; } console.log('onePlusX', ['profile', data]); const var1plusX = data.s.join(','); const varctx1plusx = data.t.join(','); this._addCustomAttributes('1plusX', var1plusX); this._addCustomAttributes('ctx1plusx', varctx1plusx); loadComponent.dispatch('onePlusX_Profil'); }); } load(){ console.log('onePlusX', `load`); __tcfapi('addEventListener', 2, (tcData, success) => { ope(this._seatId, 'init', 'tcf2'); ope(this._seatId, 'send', 'default', this._getCustomAttributes()); if (tcData.eventStatus === 'tcloaded' || tcData.eventStatus === 'useractioncomplete') { if(isAllCmpConsent(tcData)) { onePlusX_cmp_accepted = true; } loadComponent.listen('cmpAllConsentsAccepted', () => { console.log('onePlusX', [`__tcfapi cmpAccepted`, window.googletag]); window.mc.onePlusX.syncUid(typeof window.googletag !== 'undefined'); }); window.mc.onePlusX.profile(); console.log('onePlusX', [`__tcfapi`, window.googletag]); console.log('tcfapi removeEventListener'); __tcfapi('removeEventListener', 2, function() {}, tcData.listenerId); } }); } } window.mc.onePlusX = new OnePlusX(); loadComponent.listen('DOMContentLoaded', () => { loadComponent.listen('cmp', () => { window.mc.onePlusX.load(); }); }); loadComponent.listen('onePlusX_Profil', () => { if(onePlusX_cmp_accepted) { loadComponent.listen('onePlusX_ID', () => { loadComponent.dispatch('onePlusX'); }); } else { loadComponent.dispatch('onePlusX'); } }); loadComponent.listen('onePlusX', () => { prebidManager.serviceLoaded('onePlusX'); }); })(); </script> <div id="ad-pixel"></div> </body> </html>