1//var $ = jQuery.noConflict(); 2 3$( document ).ready(function() { 4 5 if(document.querySelector('.avis_v2-slider')){ 6 7 $('.avis_v2-slider').slick({ 8 centerMode: true, 9 dots: true, 10 slidesToShow: 3, 11 responsive: [ 12 { 13 breakpoint: 1224, 14 settings: { 15 arrows: false, 16 centerMode: false, 17 dots: true, 18 slidesToShow: 2 19 } 20 }, 21 { 22 breakpoint: 768, 23 settings: { 24 arrows: false, 25 centerMode: false, 26 dots: true, 27 slidesToShow: 1 28 } 29 } 30 ] 31 }); 32 const prevBtn = $('.avis_v2-slider').find('.slick-prev'); 33 const nextBtn = $('.avis_v2-slider').find('.slick-next'); 34 35 if (nextBtn.length) { 36 nextBtn.attr('data-trk-slider', 'slider avis'); 37 } 38 39 if (prevBtn.length) { 40 prevBtn.attr('data-trk-slider', 'slider avis'); 41 } 42 43 // Ce script tourne dès $(document).ready(), sans attendre $(window).on('load') â 44 // sur les FA MAD, Slick s'initialise parfois avant que la mise en page ait fini de 45 // se stabiliser (images/polices pas encore chargées), ce qui lui fait calculer une 46 // largeur de piste incorrecte : les avis débordent de leur cadre et créent un scroll 47 // horizontal infini (même cause que sur .avis-slider, cf. custom.js). On force le 48 // recalcul une fois la page entièrement chargée, sans attendre une interaction. 49 $(window).on('load', function () { 50 if ($('.avis_v2-slider').hasClass('slick-initialized')) { 51 $('.avis_v2-slider').slick('setPosition'); 52 } 53 }); 54 } 55 56 etoiles_commentaires($('.avis-ratings-service')); 57 58 handleScaleAvisV2(); 59 60}); 61 62function etoiles_commentaires(selecteur){ 63 64 selecteur.each(function(){ 65 66 var note = $(this).attr('data-note'); 67 var note_arrondie = Math.floor(note); 68 var etoile_pleine = '<i class="fa fa-star" aria-hidden="true"></i>'; 69 var etoile_duo = '<i class="fas fa-star-half-alt"></i>'; 70 var etoile_vide = '<i class="far fa-star"></i>'; 71 72 if(note_arrondie<note){ 73 for(var i=0; i<note_arrondie; i++){ 74 $(this).append(etoile_pleine); 75 } 76 77 if(note > note_arrondie + 0.5){ 78 $(this).append(etoile_duo); 79 } 80 }else if(note_arrondie=note){ 81 for(var i=0; i<note_arrondie; i++){ 82 $(this).append(etoile_pleine); 83 } 84 } 85 else{ 86 } 87 88 var nombre_total_etoile= $(this).find('i').length; 89 for(var i=nombre_total_etoile; i<5; i++){ 90 $(this).append(etoile_vide); 91 } 92 }); 93} 94 95window.onresize = handleScaleAvisV2; 96 97function handleScaleAvisV2() { 98 const elem__avisV2Slider = document.querySelector(".avis_v2-slider") 99 if(elem__avisV2Slider && window.screen.width >= 1224){ 100 const elem__avisV2Slide = elem__avisV2Slider.querySelectorAll(".slick-slide") 101 if(elem__avisV2Slide.length > 3){ 102 elem__avisV2Slide.forEach(el => { 103 el.classList.add("avis-opacity-0") 104 el.classList.add("avis-scale-down") 105 }) 106 } 107 else if (elem__avisV2Slide.length == 3) { 108 elem__avisV2Slide[0].classList.remove("slick-center") 109 elem__avisV2Slide[0].classList.add("avis-scale-down") 110 elem__avisV2Slide[2].classList.remove("slick-center") 111 elem__avisV2Slide[2].classList.add("avis-scale-down") 112 } 113 else if(elem__avisV2Slide.length < 3) { 114 115 } 116 } 117}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.