VERDOR Eyewear

VERDOR Eyewear

NOUVEAU

La paire idéale pour chaque rayon de soleil

Design minimal, protection optimale. Découvrez notre sélection premium de lunettes de soleil.

Voir la collection

Best sellers

\1 \(function\(\)\{\ \ \ \ function\ q\(s,r\)\{return\ \(r\|\|document\)\.querySelector\(s\)\}\ \ \ function\ qa\(s,r\)\{return\ Array\.prototype\.slice\.call\(\(r\|\|document\)\.querySelectorAll\(s\)\)\}\ \ \ function\ onReady\(fn\)\{\ if\(document\.readyState!=='loading'\)\ fn\(\);\ else\ document\.addEventListener\('DOMContentLoaded',\ fn\);\ \}\ \ \ \ onReady\(function\(\)\{\ \ \ \ \ \ var\ sec\ =\ q\('\.hero\.hero\-premium'\)\ \|\|\ q\('\.hero'\);\ \ \ \ \ \ if\(!sec\)\ return;\ \ \ \ \ var\ img\ =\ q\('img\.hero\-img',\ sec\)\ \|\|\ q\('img',\ sec\);\ \ \ \ \ if\(!img\)\ return;\ \ \ \ \ img\.classList\.add\('hero\-img'\);\ \ \ \ \ var\ wrap\ =\ img\.closest\('\.hero\-imgwrap'\);\ \ \ \ \ if\(!wrap\)\{\ wrap\ =\ document\.createElement\('div'\);\ wrap\.className='hero\-imgwrap';\ img\.parentNode\.insertBefore\(wrap,\ img\);\ wrap\.appendChild\(img\);\ \}\ \ \ \ \ \ //\ Slides\ from\ assets\ \(fallback\ robust\)\ \ \ \ \ var\ slides\ =\ \['assets/carousel/verdor-slide-1.jpg','assets/carousel/verdor-slide-2.jpg','assets/carousel/verdor-slide-3.jpg']\.map\(function\(src\)\{\ return\ \{src:\ src,\ href:\ 'collection\.html'\};\ \}\);\ \ \ \ \ if\(slides\.length\ <\ 2\)\ return;\ //\ nothing\ to\ slide\ \ \ \ \ \ //\ Create\ dots\ \ \ \ \ var\ dotsWrap\ =\ q\('\.hero\-dots',\ wrap\);\ \ \ \ \ if\(!dotsWrap\)\{\ dotsWrap\ =\ document\.createElement\('div'\);\ dotsWrap\.className\ =\ 'hero\-dots';\ wrap\.appendChild\(dotsWrap\);\ \}\ \ \ \ \ dotsWrap\.innerHTML='';\ \ \ \ \ var\ dots\ =\ slides\.map\(function\(_,i\)\{\ \ \ \ \ \ \ \ var\ d\ =\ document\.createElement\('span'\);\ d\.className='hero\-dot';\ d\.setAttribute\('role','button'\);\ d\.setAttribute\('aria\-label','Aller\ au\ slide\ '\+\(i\+1\)\);\ \ \ \ \ \ \ d\.addEventListener\('click',\ function\(\)\{\ show\(i\);\ \}\);\ \ \ \ \ \ \ dotsWrap\.appendChild\(d\);\ return\ d;\ \ \ \ \ \ \}\);\ \ \ \ \ \ //\ Link\ click\ on\ image\ \ \ \ \ var\ link\ =\ q\('\#heroLink',\ wrap\);\ \ \ \ \ if\(!link\)\{\ link\ =\ document\.createElement\('a'\);\ link\.id='heroLink';\ link\.setAttribute\('aria\-label','Voir\ le\ produit'\);\ wrap\.insertBefore\(link,\ img\);\ link\.appendChild\(img\);\ \}\ \ \ \ \ \ //\ Arrows\ \ \ \ \ function\ mkBtn\(dir\)\{\ \ \ \ \ \ \ \ var\ b\ =\ document\.createElement\('button'\);\ \ \ \ \ \ \ b\.className\ =\ 'hero\-btn\ '\ \+\ \(dir<0\?'hero\-prev':'hero\-next'\);\ \ \ \ \ \ \ b\.innerHTML\ =\ '';\ \ \ \ \ \ \ b\.addEventListener\('click',\ function\(e\)\{\ e\.preventDefault\(\);\ e\.stopPropagation\(\);\ go\(dir\);\ \},\ \{passive:false\}\);\ \ \ \ \ \ \ return\ b;\ \ \ \ \ \ \}\ \ \ \ \ if\(!q\('\.hero\-prev',\ wrap\)\)\ wrap\.appendChild\(mkBtn\(\-1\)\);\ \ \ \ \ if\(!q\('\.hero\-next',\ wrap\)\)\ wrap\.appendChild\(mkBtn\(1\)\);\ \ \ \ \ \ var\ pos\ =\ 0;\ \ \ \ \ function\ show\(i\)\{\ \ \ \ \ \ \ \ pos\ =\ \(i\+slides\.length\)%slides\.length;\ \ \ \ \ \ \ \ img\.style\.opacity\ =\ 0;\ \ \ \ \ \ \ \ setTimeout\(function\(\)\{\ \ \ \ \ \ \ \ \ \ img\.src\ =\ slides\[pos\]\.src;\ \ \ \ \ \ \ \ \ \ link\.href\ =\ slides\[pos\]\.href\ \|\|\ 'collection\.html';\ \ \ \ \ \ \ \ \ img\.style\.opacity\ =\ 1;\ \ \ \ \ \ \ \ \},\ 40\);\ \ \ \ \ \ \ dots\.forEach\(function\(d,j\)\{\ d\.classList\.toggle\('is\-active',\ j===pos\);\ \}\);\ \ \ \ \ \}\ \ \ \ \ function\ go\(d\)\{\ show\(pos\ \+\ \(d<0\?\-1:1\)\);\ \}\ \ \ \ \ \ //\ Swipe\ \(desktop\ mouse\ drag\ \&\ touch\)\ \ \ \ \ var\ startX\ =\ 0,\ endX\ =\ 0,\ dragging\ =\ false;\ \ \ \ \ wrap\.addEventListener\('touchstart',\ function\(e\)\{\ startX\ =\ \(e\.touches\[0\]\|\|\{\}\)\.clientX\|\|0;\ \},\ \{passive:true\}\);\ \ \ \ \ wrap\.addEventListener\('touchend',\ function\(e\)\{\ endX\ =\ \(e\.changedTouches\[0\]\|\|\{\}\)\.clientX\|\|0;\ var\ dx=endX\-startX;\ if\(Math\.abs\(dx\)>30\)\ go\(dx>0\?\-1:1\);\ \},\ \{passive:true\}\);\ \ \ \ \ wrap\.addEventListener\('mousedown',\ function\(e\)\{\ dragging=true;\ startX=e\.clientX;\ \}\);\ \ \ \ \ window\.addEventListener\('mouseup',\ function\(e\)\{\ if\(!dragging\)\ return;\ dragging=false;\ endX=e\.clientX;\ var\ dx=endX\-startX;\ if\(Math\.abs\(dx\)>30\)\ go\(dx>0\?\-1:1\);\ \}\);\ \ \ \ \ \ //\ Kick\ off\ \ \ \ \ show\(0\);\ \ \ \}\);\ \}\)\(\); \3 Math.abs(dx)>30) go(dx>0?-1:1); }); // Kick off show(0); }); })();